Работа 3.5 Упр.1 Задание 1 ГДЗ Семакин 10 класс (Информатика)
Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 1. Составить программу нахождения наибольшего общего делителя (НОД) и наименьшего общего кратного (НОК) двух натуральных чисел НОК(А, В) = (A*B)/НОД(A,B). Использовать подпрограмму алгоритма Евклида для определения НОД. *Цитирирование задания со ссылкой на учебник производится исключительно в учебных целях для лучшего понимания разбора решения задания. 10 semakin10 pract/3-5/zad1/1 98
Составим программу на Pascal. Для нахождения НОД используем подпрограмму алгоритма Евклида, а НОК вычислим по формуле $$\text{НОК}(A,B)=\dfrac{A\cdot B}{\text{НОД}(A,B)}$$.
var a, b : longint;
function nod(a, b : longint) : longint;
begin
if a = b then
nod := a
else if a > b then
nod := nod(b, a — b)
else
nod := nod(a, b — a)
end;
function nok(a, b : longint) : longint;
begin
nok := (a * b) div nod(a, b);
end;
begin
while TRUE do begin
write(‘A = ‘);
readln(a);
if a < 1 then break;
write(‘B = ‘);
readln(b);
if b < 1 then break;
writeln(‘NOD: ‘, nod(a,b), ‘; NOK: ‘, nok(a, b));
end;
end.
Ответ
Программа составлена.