Пожалуйста напишите задачу ** наименьший общий делитель и решение)))

0 голосов
28 просмотров

Пожалуйста напишите задачу на наименьший общий делитель и решение)))


Математика (12 баллов) | 28 просмотров
Дано ответов: 2
0 голосов
В чем проблема то? 

> НОД(А,В) = НОД(В, А mod B) , если В не равен 0; НОД(А,0)=А 
Вот тебе дано определение -- фактически алгоритм. По нему и можно сразу же написать: 

function nod(a, b: longint): longint; 
begin 
    if b <> 0 then 
        nod := nod(b, a mod b) 
    else 
        nod := a; 
end; 

var 
    a, b, c, d: longint; 
begin 
    write('A B C D? '); 
    readln(a, b, c, d); 
    writeln('НОД(A, B): ', nod(a, b)); 
    writeln('НОД(A, C): ', nod(a, c)); 
    writeln('НОД(A, D): ', nod(a, d)); 
end. 

От рекурсии можно при желании избавится, тогда надо использовать цикл.
(18 баллов)
0 голосов

 для двух целых чисел m и n называется наибольший из их общих делителей.
Пример: для чисел 6 и 9 наибольший общий делитель равен 3.

Наибольший общий делитель существует и однозначно определён, если хотя бы одно из чисел m или n не равно нулю.
В школьной программе обозначается так: НОД(m, n)

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

(253 баллов)