While23. Даны целые положительные числа A и B. Найти их наибольший общий делитель (НОД), используя алгоритм Евклида: НОД(A,B) = НОД(B, A mod B), если B \not= 0; НОД(A, 0) = A.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
program While23; var A,B :Integer; begin Write('Введите число A: '); Readln(A); Write('Введите число B: '); Readln(B); while (A<>0) and (B<>0) do begin if a>b then A:=(a mod b) else B:=(B mod A); end; Writeln(A+B); end. |
Другие задачи из раздела While можно посмотреть здесь.
`
Что значит writeln (a+b) ??
Сначало выполняется операция a+b, а потом выводится на консоль.