Дана следующая программа:
var a,b,r:integer;
begin
readln(a,b);
while b<>0 do begin
r:=a mod b;
a:=b;
b:=r;
end;
writeln(a);
end.
На вход программе переменной a подаётся значение 39, а переменной b – какое-то натуральное число, строго меньшее 39. Какое максимально возможное число может вывести программа?

27 Ноя 2019 в 19:55
505 +1
0
Ответы
1

Максимально возможное число, которое может вывести программа при вводе 39 и какого-то натурального числа, строго меньшего 39, будет равно Наибольшему общему делителю (НОД) этих двух чисел.

В данной программе осуществляется вычисление НОД двух чисел с помощью алгоритма Евклида. Поэтому максимально возможное число, которое может вывести программа, будет равно НОД(39, b), где b - натуральное число, строго меньшее 39.

Поскольку 39 - простое число (не имеет делителей, кроме 1 и самого себя), то максимально возможное число, которое может вывести программа, будет равно 1, т.е. НОД(39, b) = 1.

Итак, при вводе 39 и любого натурального числа, строго меньшего 39, программа выведет максимально возможное число - 1.

19 Апр 2024 в 00:38
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир