Предмет: Информатика, автор: МасYaNya

Помогите пожалуйста сделать задание 2 на языке Паскаль(алгоритм Евклида).

Приложения:

Ответы

Автор ответа: djonik2
1
Program Example_11;
Var M, N: Integer;
Begin
Writeln('Введите два числа');
Readln(M,N); {вводим два целых числа}
If M>N Then M:=M Mod N
Else N:=N Mod M;
Until (M=0) Or (N=0);
{до тех пор, пока одно из чисел не станет равно нулю}
Writeln('НОД=', M+N)); {вывод НОД - без условного оператора, так как одно из чисел обязательно равно нулю}
Readln;
End.
нок:
program NOK;
uses crt;
function NOD(X,Y:integer):integer;
begin
If X<>0 then NOD:=NOD(Y mod X,X)
else NOD:=Y;
end;
function NOK(X,Y:integer):integer;
begin
NOK:=(X div NOD (X,Y))*Y;
end;
var M,N: integer;
begin clrscr;
writeln('Ввод M и N :');
readln(M,N);
writeln (NOK(M,N));
readln;
end.

МасYaNya: мне же НОК надо.
djonik2: Да,ошибочка вышла
djonik2: Вроде так...
МасYaNya: спасибо,но что за оператор "uses crt".Я просто только в 9 классе,и не знаю ,что это.
djonik2: uses - это подключает доп. модуль в данном случае crt
crt - это модуль для работы с экраном
МасYaNya: спасибо вам,узнал на всякий случай,а то учитель еще придереться.
МасYaNya: на pascalabc.net выдал ошибку
djonik2: что за ошибка?
djonik2: program NOK;
function nod1(X,Y:integer):integer;
begin
If X<>0 then nod1:=NOD1(Y mod X,X)
else nod1:=Y;
end;
function NOK1(x,y:integer):integer;
begin
NOK1:=(X div NOD1 (X,Y))*Y;
end;
var M,N: integer;
begin
writeln('Ввод M и N :');
readln(M,N);
writeln (NOK1(M,N));
end.
Похожие вопросы
Предмет: Английский язык, автор: ДашаШирова
Предмет: Английский язык, автор: Яна5442
Предмет: Алгебра, автор: mathematics18