Информатика, вопрос задал manul778 , 7 лет назад

Составьте программу нахождения наибольшего общего делителя трех чисел на паскале.
Вроде составила блок-схему, которая работает,но что-то не получается написать программу...

Приложения:

Ответы на вопрос

Ответил melwaytg
0
_______________________
Приложения:
Ответил melwaytg
0
uses crt;
var a,b,c:integer;
function NOD(m,n:integer):integer;
begin
while m<>n do
if m>n then m:=m-n else n:=n-m;
NOD:=m;
end;
begin
write('a=');read(a);
write('b=');read(b);
write('c=');read(c);
writeln;
writeln('NOD(a,b,c)=',NOD(NOD(a,b),c));
end.
Ответил manul778
0
спасибо, но мы ещё не проходили функции(
Ответил Аноним
0
PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018
Внимание! Если программа не работает, обновите версию!

begin
  var a,b,c:integer;
  Read(a,b,c);
  while a<>b do
    if a>b then a:=a-b
    else b:=b-a;
  while a<>c do
    if a>c then a:=a-c
    else c:=c-a;
  Writeln(a)
end.

Все реализовано в точном соответствии с приведенной блок-схемой.
Проверено для набора входных данных 6 30 15, получен верный результат 3.
Приложения:
Новые вопросы