Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
yaho
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 36
1

Найти наибольший общий делитель, используя алгоритм Евклида

22.01.2013, 21:47. Просмотров 1607. Ответов 3
Метки нет (Все метки)

Даны n натуральных чисел, Найти их наибольший общий делитель, используя алгоритм Евклида и учитывая, что НОД (а, b, c) = НОД (НОД(а, b), с). (Определить функцию для расчета наибольшего общего делителя двух натуральных чисел, используя алгоритм Евклида.)
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2013, 21:47
Ответы с готовыми решениями:

Найти наибольший общий делитель двух заданных натуральних чисел, используя алгоритм Евклида
Найти наибольший общий делитель двух заданных натуральних чисел, используя алгоритм Евклида.

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

Найти их наибольший общий делитель (НОД), используя алгоритм Евклид
21 Найти общий расход топлива N автоколонн за неделю. Известно, что каждая автоколонна состоит из...

Найти наибольший общий делитель
Найти наибольший общий делитель и наименьшее общее кратное двух натуральных чисел если дана...

3
Puporev
Модератор
59479 / 44874 / 30980
Регистрация: 18.05.2008
Сообщений: 107,675
23.01.2013, 10:12 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
uses crt;
function Nod(x,y:integer):integer;
begin
repeat
if abs(x)>abs(y) then x:=x mod y
else y:=y mod x;
until (x=0) or (y=0);
Nod:=abs(x+y);
end;
var a:array[1..100] of integer;
    n,i:byte;
    k:integer;
begin
clrscr;
write('Введите кол-во элементов n=');
read(n);
writeln('Введите элементы массива: ');
for i:=1 to n do
 begin
  write('a[',i,']=');
  read(a[i]);
 end;
clrscr;
writeln('Массив:');
for i:=1 to n do
write(a[i],' ');
writeln;
k:=Nod(a[1],a[2]);
for i:=3 to n do k:=nod(k,a[i]);
writeln('Общий НОД всех элементов=',k);
end.
1
yaho
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 36
23.01.2013, 17:13  [ТС] 3
спасибо большое, а можете пояснить, что где происходит?
0
Puporev
Модератор
59479 / 44874 / 30980
Регистрация: 18.05.2008
Сообщений: 107,675
23.01.2013, 17:15 4
Цитата Сообщение от yaho Посмотреть сообщение
что где происходит?
Вот что написано в задании, то и происходит. А про алгоритм Эвклида почитайте, я не ликбез бесплатный.
0
23.01.2013, 17:15
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2013, 17:15

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Найти наибольший общий делитель 3 чисел
Вводится 3 числа .найти наибольший общий делитель этих 3 чисел.И наименьшее общее кратное

Найти наибольший общий делитель восьми натуральных чисел
дано 8 натуральных чисел. найти их наибольший общий делитель. с помощью массива и заполнения...

Даны три числа. Найти их наибольший общий делитель.
Даны три числа. Найти их наибольший общий делитель.

Найти наибольший общий делитель двух натуральных чисел
Условие:найти наибольший общий делитель двух натуральных чисел a и b. Решение: program Ivan; var...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.