Даны натуральные числа М и N. Определить их наименьшее общее кратное Nok.
VAR I, N, M, K, NOD, NOK : INTEGER;
BEGIN
{ДAHЫ НАТУРАЛЬНЫЕ ЧИСЛА М И N.
ОПРЕДЕЛИТЬ ИХ НАИМЕНЬШЕЕ ОБЩЕЕ КРАТНОЕ NOK}
REPEAT
WRITE(‘BBEДИТЕ НАТУРАЛЬНОЕ ЧИСЛО N= ‘);
READLN (N);
WRITE(‘BBEДИTE НАТУРАЛЬНОЕ ЧИСЛО М=’);
READLN (M);
UNTIL (N>0) AND (M>0);
IF N>M THEN К := M
ELSE К := N;
FOR I := 1 TO К DO
IF (N MOD I = 0) AND (M MOD I = 0) THEN
NOD := I;
NOK := NOD*(N DIV NOD)*(M DIV NOD);
WRITELN(‘HAИMEHЬШЕЕ ОБЩЕЕ КРАТНОЕ ЧИСЕЛ’);
RITELN(N, ‘И’, М, ‘NOK =’, NOK)
END.
Для решения задачи:
— формируем тело программы и описываем переменные;
— вводим натуральные числа М и N;
— в цикле от 1 до наименьшего числа порождаем число I и проверяем, является ли оно одновременно делителем М и N;
— запоминаем этот делитель в переменной NOD;
— учитывая, что NOK = NOD*(N DIV NOD)*(M DIV NOD), выводим результат.
Переменные:
N, M — исследуемые числа;
I — переменная цикла;
NOD — наибольший общий делитель;
NOK — наименьшее общее кратное;
К — наименьшее из М и N.