Помощь - Поиск - Пользователи - Календарь
Полная версия: Наибольший общий делитель для 3 чисел
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
DaNTeS
В прикреплённом файле прога находящая НОД для 3 натуральных чисел введённых с клавиатуры, но работает блин не всегда, числа приходиться вводить в оределённом порядке....нитак чё введёшь сразу деление на ноль.... mega_chok.gif
Помогите плз ошибку найти, чтоб в любом порядке можно было вводить.... wacko.gif
volvo
Вообще-то по алгоритму Евклида должно быть так (если ты уже собрался делать это процедурой, а не функцией):
Procedure delenie(a,b:Longint; Var s1:Longint);
Begin
while (a <> 0) and (b <> 0) do

if a >= b then a := a mod b
else b := b mod a;

s1 := a + b; { <--- !!! }
end;

Тогда никак не получится НОД = 0 ...
DaNTeS
Пасиб Volv give_rose.gif (а процедурой просто в школе сделать сказали)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.