Используем известное соотношение:
// PascalABC.NET 3.1, сборка 1250 от 28.05.2016
function NOD(a,b:integer):integer;
begin
while a<>b do
if a>b then a:=a-b
else b:=b-a;
Result:=a
end;
function NOD(a,b,c:integer):=NOD(NOD(a,b),c);
function NOK(a,b:integer):=(a*b) div NOD(a,b);
function NOK(a,b,c:integer):=NOK(NOK(a,b),c);
begin
Writeln(NOD(250,15));
Writeln(NOD(250,150,50));
Writeln(NOK(250,15));
Writeln(NOK(250,15,50))
end.
Решение для тестовых данных
5
50
750
750