Решение задачи 9:
а) Программа вычисления наибольшего общего делителя (НОД) двух целых чисел с использованием оператора `repeat` (предполагается, что используется псевдокод, так как конкретный язык программирования не указан):
program NOD_repeat;
var
a, b: integer;
begin
writeln('Введите два целых числа:');
readln(a, b);
repeat
if a > b then
a := a - b
else
b := b - a;
until a = b;
writeln('Наибольший общий делитель: ', a);
end.
Пояснение:
1. Считываем два целых числа `a` и `b`.
2. В цикле `repeat...until` вычитаем меньшее число из большего до тех пор, пока они не станут равны.
3. Когда `a` и `b` станут равны, это и будет НОД.
б) Программа вычисления НОД с использованием оператора `while`:
program NOD_while;
var
a, b: integer;
begin
writeln('Введите два целых числа:');
readln(a, b);
while a <> b do
begin
if a > b then
a := a - b
else
b := b - a;
end;
writeln('Наибольший общий делитель: ', a);
end.
Пояснение:
1. Считываем два целых числа `a` и `b`.
2. В цикле `while a <> b` (пока `a` не равно `b`) вычитаем меньшее число из большего.
3. Когда `a` и `b` станут равны, это и будет НОД.