Предмет: Информатика,
автор: D9dimaD9
Даны два числа А и В(положительные). Составить алгоритм нахождения: а) наименьшего общего делителя; б) наименьшего общего кратного.
напишите на паскале пожалуйста
Ответы
Автор ответа:
0
НОД будем находить при помощи Эвклидового алгоритма, а НОК - по формуле:
.
program nod_nok;
var
a, b, g: integer;
l: real;
function Gcd(a, b: integer): integer;
var
t: integer;
begin
while b <> 0 do
begin
t := b;
b := a mod b;
a := t;
end;
Gcd := a;
end;
function Lcm(a, b, gcd: integer): real;
begin
Lcm := Abs( a * b ) / gcd;
end;
begin
write('a = ');
readln(a);
write('b = ');
readln(b);
g := Gcd(a, b);
writeln('НОД: ', g);
l := Lcm(a, b, g);
writeln('НОК: ', l:1:0);
end.
program nod_nok;
var
a, b, g: integer;
l: real;
function Gcd(a, b: integer): integer;
var
t: integer;
begin
while b <> 0 do
begin
t := b;
b := a mod b;
a := t;
end;
Gcd := a;
end;
function Lcm(a, b, gcd: integer): real;
begin
Lcm := Abs( a * b ) / gcd;
end;
begin
write('a = ');
readln(a);
write('b = ');
readln(b);
g := Gcd(a, b);
writeln('НОД: ', g);
l := Lcm(a, b, g);
writeln('НОК: ', l:1:0);
end.
Автор ответа:
0
а смысл 2 раза писать var?
Автор ответа:
0
Второе var - переменные функции, абсолютно другая степь. Первое - программы, второе - именно функции Gcd().
Автор ответа:
0
мама, роди меня обратно, почему за 11 лет меня этому не учили, даже на 1 курсе мне не говорили про это, а в сессии это есть. спасибо тебе огромное за помощь. можешь в лс (в идеале в вк), если не сложно, объяснить как решать подобное?
Похожие вопросы
Предмет: Другие предметы,
автор: Arianapedakhmetova
Предмет: Русский язык,
автор: lizacesnokova74660
Предмет: Математика,
автор: lera57570
Предмет: Геометрия,
автор: kilovok
Предмет: Математика,
автор: Y4enI4ek