Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/113: Рейтинг темы: голосов - 113, средняя оценка - 4.51
0 / 0 / 0
Регистрация: 05.03.2010
Сообщений: 7

НОК и НОД для нескольких чисел

05.03.2010, 19:36. Показов 22831. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста=)
Нужно написать программу для вычисления наименьшего общего кратного и наибольшего общего делителя заданной совокупности чисел.
Для двух чисел понятно,а вот для нескольких немножко затруднительно)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.03.2010, 19:36
Ответы с готовыми решениями:

Программа НОК и НОД для 2 чисел через процеруды
вообще не могу составить эту прогамму использую процедуры, помогите!

Составить процедуру возврата НОК и НОД для двух чисел
Составить процедуру возврата НОК и НОД для двух чисел (использовать функцию) ЗАРАНЕЕ СПАСИБО!!!

Процедура/функция для обсчета НОК и НОД двух чисел
Необходимо реализовать процедуры/функции, которые в качестве результата выдают наименьшее общее кратное и наибольший общий делитель двух...

7
 Аватар для yanyk1n
4342 / 1474 / 680
Регистрация: 12.03.2009
Сообщений: 5,310
05.03.2010, 19:43
НОД(A1,A2,A3,...)=НОД(НОД(A1,A2),A3...)= НОД(НОД(НОД(A1,A2),A3),A4...) и так далее. Тоже самое доя НОК
0
0 / 0 / 0
Регистрация: 05.03.2010
Сообщений: 7
05.03.2010, 19:49  [ТС]
Еще можно вопросик?А как сделать чтобы при заданном количестве чисел,например 100,вычислялись их НОК и НОД ,т.е. как сделать чтобы количество этих А1,А2,А3... можно было задавать?
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
05.03.2010, 21:44
Создать массив из этих чисел, размер которого задается.

Добавлено через 2 минуты
Вот примеры нахождения НОД и НОК нескольких чисел.
1. НОД
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(a,b:integer):integer;{определение НОД двух чисел}
begin
 while a<>b do
 if a>b then a:=a-b else b:=b-a;
 Nod:=a;
end;
 
var a:array[1..100] of integer;
    n,i:byte;
    k:integer;
begin
clrscr;
write('Введите кол-во элементов n=');
readln(n);
writeln('Введите элементы массива: ');
for i:=1 to n do
 begin
  write('a[',i,']=');
  readln(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);
readln
end.
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
32
uses crt;
function NOD(x,y:integer):integer;
Begin
If x<>0 then NOD:=NOD(y mod x,x) else NOD:=y;
End;
function NOK(x,y:integer):integer;
Begin
NOK:=(x div NOD (x,y))*y; 
end;
var a:array[1..100] of integer;
    n,i:byte;
    k:integer;
begin
clrscr;
write('Введите кол-во элементов n=');
readln(n);
writeln('Введите элементы массива: ');
for i:=1 to n do
 begin
  write('a[',i,']=');
  readln(a[i]);
 end;
clrscr;
writeln('Массив:');
for i:=1 to n do
write(a[i],' ');
writeln;
k:=NOK(a[1],a[2]);
for i:=3 to n do k:=NOK(k,a[i]);
writeln('Общий НОK всех элементов=',k);
readln
end.
2
0 / 0 / 0
Регистрация: 05.03.2010
Сообщений: 7
05.03.2010, 23:43  [ТС]
Спасибо!Очень вам благодарна!
0
22 / 22 / 34
Регистрация: 29.04.2014
Сообщений: 145
29.04.2014, 12:20
Недавно сам задался вопросом автора. В интернете поиск увенчался неудачей. Пришлось самому шевелить извилиной. Так вот, написал функцию для нахождения НОД-а любого кол-ва чисел. Сейчас буду думать над НОК-ом.
Ах-да, еще функция Min - написал для нахождения минимального НЕ из 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
function Min(params Args: Array of Integer): Integer;
begin
  for var i := 0 to Args.Length - 2 do
    if Args[i] < Args[i + 1] then Swap(Args[i], Args[i + 1]);
  Result := Args[Args.Length - 1];
end;
 
function Gcd(params Args: Array of Integer): Integer;
begin
  for var i := Min(Args) + 1 downto 1 do
  begin
    for var j := 0 to Args.Length - 1 do if Args[j] mod i = 0 then Result += 1 else Result := 0;
    if Result = Args.Length then
    begin
      Result := i;
      Exit;
    end
    else Result := 0;
  end;
end;
 
Begin
  Writeln(Gcd(144, 36, 300));
End.
0
 Аватар для Nedris
1 / 1 / 0
Регистрация: 28.12.2020
Сообщений: 17
08.01.2021, 11:36
Puporev, Здравствуйте, Уважаемый модератор. сайт еще активен(много народу), или уже нет? И, чем я могу помочь ? вы мне 2 раза помогли, хочу чем-то отплатить тоже, конечно же в виде помощи по сайту.
Мне очень понравился сайт. Помощь друг-другу, советы для будущих It-шников это рай для меня)
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
08.01.2021, 11:47
Цитата Сообщение от Nedris Посмотреть сообщение
сайт еще активен(много народу), или уже нет?
Зайди на главную страницу и посмотри в низу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.01.2021, 11:47
Помогаю со студенческими работами здесь

С помощью подпрограммы для нахождения НОД найти НОК четырёх чисел
Дана подпрограмма, вычисляющай наибольшей делитель двух чисел. Дописать программу вычисляющую НОК введённых 4 чисел использующую...

Даны натуральные числа A и B. Найти их НОК, определив функцию для расчета НОД двух натуральных чисел, используя алгоритм Евклида
Даны натуральные числа A и B. Найти их наименьшее общее кратное, определив функцию для расчета наибольшего общего делителя двух натуральных...

Процедура: вычисление НОД и НОК двух чисел
ПОМОГИТЕ РЕШИТЬ ЗАДАЧУ! Описать процедуру обчисления НОД и НОК двух чисел. С помощью этой процедуре составьте программу, которая вычисляет...

Написать программу для нахождения НОД и НОК двух натуральных чисел
:-|Проблема в том, что не могу расписать программу для нахождения НОД и НОК двух натуральных чисел. При этом нужно использовать процедуру...

Нахождение НОК нескольких натуральных чисел
Алгоритм нахождения НОК нескольких натуральных чисел (до 10 чисел )


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru