Помогите , даю 15 баллов, срочно

0 голосов
22 просмотров

Помогите , даю 15 баллов, срочно


image

Информатика (709 баллов) | 22 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.3, сборка 1611 от 06.01.2018
// Внимание! Если программа не работает, обновите версию!

procedure NOD(a,b:integer; var r:integer);
begin
  while b>0 do (a,b):=(b,a mod b);
  r:=a
end;

begin
  var a,b,c,d:integer;
  Write('Введите четыре натуральных числа через пробел: ');
  Read(a,b,c,d);
  var p,q,r:integer;
  NOD(a,b,p); q:=(a*b) div p; // НОК(a,b)
  NOD(c,d,p); r:=(c*d) div p; // НОК(c,d)
  NOD(q,r,p); r:=(q*r) div p; // НОК(a,b,c,d)
  Writeln('НОК=',r)
end.

Пример
Введите четыре натуральных числа через пробел: 15 23 36 150
НОК=20700
(150k баллов)