4 / 4 / 0
Регистрация: 23.12.2009
Сообщений: 52

НОД 4-ёх чисел

14.03.2010, 15:33. Показов 4506. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
составить программу нахождения наибольшего общего делителя четырех натуральных чисел.через процедуры
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.03.2010, 15:33
Ответы с готовыми решениями:

Даны n натуральных чисел. Найти их наибольший общий делитель, учитывая что НОД(а,б,с)=НОД(НОД(а,б)с)
даны n натуральных чисел. Найти их наибольший общий делитель, учитывая, что НОД(a,b,c) = НОД (НОД(a,b)c). При решении определите функцию...

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

Даны n натуральных чисел. Найти НОД и НОК этих чисел
Даны n натуральных чисел. Найти НОД и НОК этих чисел.

13
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
14.03.2010, 15:38
Pascal
1
2
3
4
5
6
7
function NOD(x,y: integer):integer;
begin
  if y = 0 then
    NOD := x
  else
    NOD := NOD(y, (x mod y))
end;
1
4 / 4 / 0
Регистрация: 23.12.2009
Сообщений: 52
14.03.2010, 15:48  [ТС]
а процедуры от функции ни чем не отличаются??
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
14.03.2010, 15:49
tem@, А почитать?
1
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
14.03.2010, 15:50
tem@, отличаются, но тебе ж надо для 4-х чисел, вот и объедини в процедуру нахождение НОД для 4-х чисел с помощью данной функции.
1
4 / 4 / 0
Регистрация: 23.12.2009
Сообщений: 52
14.03.2010, 15:55  [ТС]
сижу читаю тут=))но не понимаю
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
14.03.2010, 15:57
tem@, Ты в учебниках читай, а не тут.

Добавлено через 1 минуту
http://www.google.ru/search?hl... &lr=&aq=f&
1
4 / 4 / 0
Регистрация: 23.12.2009
Сообщений: 52
14.03.2010, 15:58  [ТС]
лежит учебник перед глазами вот и читаю)))
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
14.03.2010, 16:03
Опять сказки про то, что ну просто нигде не написано об этом... А тем временем встроенный хэлп гласит:
Описание процедур и функций
Процедура или функция представляет собой последовательность операторов, которая имеет имя, список параметров и может быть вызвана из различных частей программы. Функции, в отличие от процедур, в результате своего выполнения возвращают значение. Для единообразия функции и процедуры называются подпрограммами.

Любая используемая в программе процедура или функция должна быть предварительно описана в разделе описаний.

Описание процедуры имеет вид:

Pascal
1
2
3
4
5
procedure имя(список формальных параметров);
раздел описаний 
begin
  операторы 
end;
Описание функции имеет вид:

Pascal
1
2
3
4
5
function имя(список формальных параметров): тип возвращаемого значения;
раздел описаний 
begin
  операторы 
end;
Операторы подпрограммы, окаймленные операторными скобками begin/end, называются телом этой подпрограммы.

Список формальных параметров вместе с окружающими скобками может отсутствовать. Он состоит из одной или нескольких секций, разделенных символом ";". Каждая секция состоит из списка переменных, перечисляемых через запятую, после которого следуют двоеточие и тип. Каждая секция может предваряться служебным словом var, что указывает на то, что параметры передаются по ссылке (см.п. Параметры процедур и функций).

Раздел описаний процедуры или функции устроен так же, как и раздел описаний основной программы. Здесь описываются так называемые локальные переменные и константы, типы а также вложенные процедуры и функции. Все такие локальные объекты доступны лишь внутри данной подпрограммы и не видны извне.

Пример описания процедуры приводится ниже:

Pascal
1
2
3
4
5
6
7
8
9
10
procedure Reverse(var a: array [1..100] of integer; n: integer);
var i,v: integer;
begin
  for i:=1 to n div 2 do
  begin
    v:=a[i];
    a[i]:=a[n-i+1];
    a[n-i+1]:=v;    
  end;
end;
Внутри тела функции имя этой функции можно использовать как специальную переменную, которой необходимо присвоить возвращаемое значение. Например:

Pascal
1
2
3
4
function Add(a,b: real): real;
begin
  Add:=a+b;
end;
Имя функции может быть использовано с целью возврата значения только в левой части оператора присваивания. Если имя функции встречается в выражении, то это трактуется как рекурсивный вызов этой функции.
1
4 / 4 / 0
Регистрация: 23.12.2009
Сообщений: 52
14.03.2010, 16:19  [ТС]
эхх...дырявая моя голова,пока ничего не понимается..
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
14.03.2010, 16:42
tem@, читай снова и снова до тех пор пока не поймешь. Да и при этом важно отбросить мысли о халяве, что кто-то сделает всё за тебя.
1
 Аватар для vad2211
119 / 119 / 41
Регистрация: 21.12.2009
Сообщений: 194
14.03.2010, 17:22
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
program vad2211;
uses crt;
var
   a,b,c,d,n:integer;
procedure vvod;
 begin
  writeln('Vvedite 4 chisla.');
  write('a=');readln(a);
  write('b=');readln(b);
  write('c=');readln(c);
  write('d=');readln(d);
 end;
function nod(var x,y:integer):integer;
 begin
  while x<>y do
   if x>y then x:=x-y else y:=y-x;
  nod:=y;
 end;
begin {main program}
 clrscr;
 vvod;
 n:=nod(a,b);
 n:=nod(n,c);
 n:=nod(n,d);
 writeln(n);
 readln;
end.
2
4 / 4 / 0
Регистрация: 23.12.2009
Сообщений: 52
14.03.2010, 19:42  [ТС]
Inadequate, да мне самому уж стыдно как-то просить тут решить задачи.. но не получается у меня решать эти задачи,всё учится хорошо,без особых проблем,кроме паскаля,вот простые задачи там на циклы,массивы как-то еще стал делать немного,а тут еще и процедуры,и функции начались...что вообще не понятно....даже обяснить не смогу как работает программа,все придется разбираться в решенной задаче
0
5 / 5 / 0
Регистрация: 24.06.2010
Сообщений: 14
16.03.2011, 17:47
Может кому пригодится... переписал алгоритм vad2211, на VBA, а то бывают всякие непонятливые как ТС.
Visual Basic
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
Function nod(x As Integer, y As Integer)
 
  Do While x <> y
  If x > y Then x = x - y Else y = y - x
  Loop
  nod = y
 End Function
 
Sub Dry5Ballov()
 
 Dim a As Integer
 Dim b As Integer
 Dim c As Integer
 Dim d As Integer
 Dim n As Integer
 
a = Val(InputBox("Ââåäèòå 1-å ÷èñëî"))
b = Val(InputBox("Ââåäèòå 2-å ÷èñëî"))
c = Val(InputBox("Ââåäèòå 3-å ÷èñëî"))
d = Val(InputBox("Ââåäèòå 4-å ÷èñëî"))
 
 n = nod(a, b)
 n = nod(n, c)
 n = nod(n, d)
 
 MsgBox (Str(n))
 
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.03.2011, 17:47
Помогаю со студенческими работами здесь

Найти набольший общий делитель чисел A, B, C, создав процедуру для нахождения НОД двух натуральных чисел
Найти набольший общий делитель чисел A, B, C, создав процедуру для нахождения НОД двух натуральных чисел.

НОД 3х чисел
Алгоритм нахождения НОДа трёх чисел:(

НОД четырех чисел
ispolzuya podprogrammi napisat resheniya zadach.naiti NOD chisel a, b, c, d

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

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


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

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

Новые блоги и статьи
Динамические массивы в C++ - создание и использование
NullReferenced 27.04.2025
Динамические массивы представляют собой один из фундаментальных инструментов программирования на C++, позволяющий создавать структуры данных, размер которых определяется во время выполнения. . .
Асинхронный JavaScript: Промисы, Async/Await и Fetch API
Reangularity 27.04.2025
Пользователь заходит на веб-страницу, нажимает кнопку и. . . ничего не происходит. Сайт словно замер. Через несколько секунд всё внезапно оживает, но пользователь уже успел закрыть вкладку. Знакомая. . .
Management on GitLab and repository management in Visual Studio code
jigi33 27.04.2025
- repo management on GitLab - CI/ CD in GitLab - VCS repository management in Visual Studio code (see attachments)
Kanban или Scrum - что выбрать?
EggHead 27.04.2025
Kanban и Scrum — уже много лет удерживают лидирующие позиции среди гибких подходов. Руководители проектов и команды разработчиков то и дело сталкиваются с дилеммой: какой из этих двух методов выбрать. . .
Кастомные Middleware на C# в ASP.NET Core
UnmanagedCoder 27.04.2025
Разработка веб-приложений сегодня мало напоминает монолитное программирование прошлых лет. На смену громоздким блокам кода пришла модульная архитектура, где каждый компонент выполняет строго. . .
Анализ и линтинг кода JavaScript: ESLint, Prettier и JSHint
run.dev 26.04.2025
JavaScript прошёл долгий путь от простого языка для анимации веб-страниц до основы современной веб-разработки. С ростом сложности приложений, увеличением кодовых баз и масштабированием команд. . .
Паттерны в Python: Singleton, Factory и Observer
py-thonny 26.04.2025
Паттерны проектирования — это проверенные временем решения типовых проблем разработки программного обеспечения. Их история берёт начало с книги "Приёмы объектно-ориентированного проектирования. . . .
Исключения в C#: Stack Overflow, Access Violation и Out of memory
stackOverflow 26.04.2025
Исключения в C# — это не только механизм оповещения о проблемах, а целое искусство управления потоком выполнения программы в экстремальных ситуациях. Обычное исключение, например,. . .
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Структура "железный OnKeyUp" вместо антидребезга. Полностью асинхронный счётчик.
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru