Даны два числа А и В(положительные). Составить алгоритм нахождения: а) наименьшего общего делителя; б) наименьшего общего кратного.
напишите на паскале пожалуйста

Ответы

Ответ дал: BrightOne
0
НОД будем находить при помощи Эвклидового алгоритма, а НОК - по формуле: lcm(a;b)=frac{|a times b|}{gcd(a;b)}.

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.

Ответ дал: D9dimaD9
0
а смысл 2 раза писать var?
Ответ дал: BrightOne
0
Второе var - переменные функции, абсолютно другая степь. Первое - программы, второе - именно функции Gcd().
Ответ дал: D9dimaD9
0
мама, роди меня обратно, почему за 11 лет меня этому не учили, даже на 1 курсе мне не говорили про это, а в сессии это есть. спасибо тебе огромное за помощь. можешь в лс (в идеале в вк), если не сложно, объяснить как решать подобное?
Вас заинтересует