Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2009, 19:02   #1
Igomax
Пользователь
 
Регистрация: 19.04.2009
Сообщений: 36
По умолчанию Определить из наибольший общий делитель, используя функцию нахождения общего делителя.

Даны натуральные числа. Определить из наибольший общий делитель, используя функцию нахождения общего делителя.

Подскажите что не правильно я сделал
PHP код:
program ll;
var 
a,b:longint;
function 
del(var x:longint):longint;
var 
i:longint;
begin 
a
:=x;
if 
x>b then x:=b;
for 
i:=1 to x do begin
if (a mod i=0) and (b mod i=0then X:=i;
end;
del:=x;
end;
begin writeln;
write ('vvedite a i b');
read (a,b);
write ('obshii del=  ',del(a));
end
Igomax вне форума Ответить с цитированием
Старый 23.05.2009, 19:11   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
uses crt;
var a,b:longint;
 
function del(a,b:longint):longint;
begin
while (a<>0) and (b<>0) do
 if a>b then a := a mod b
 else b := b mod a;
del := a+b;
end; 

begin
clrscr;
write ('vvedite a i b  ');
readln(a,b);
writeln('obshii del=  ',del(a,b));
readln;
end.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 23.05.2009, 19:31   #3
Igomax
Пользователь
 
Регистрация: 19.04.2009
Сообщений: 36
По умолчанию

Цитата:
while (a<>0) and (b<>0) do
if a>b then a := a mod b
else b := b mod a;
Объясните пожалуйста что это значит
Igomax вне форума Ответить с цитированием
Старый 23.05.2009, 19:33   #4
DM_bite
Участник клуба
 
Аватар для DM_bite
 
Регистрация: 29.07.2008
Сообщений: 1,091
По умолчанию

Цитата:
while (a<>0) and (b<>0) do
if a>b then a := a mod b
else b := b mod a;
Это и есть то, что тебе нужно:
Цитата:
Определить из наибольший общий делитель
Кто бы ты ни был - не думай о себе слишком (с)
DM_bite вне форума Ответить с цитированием
Старый 23.05.2009, 19:34   #5
Igomax
Пользователь
 
Регистрация: 19.04.2009
Сообщений: 36
По умолчанию

Я понял просто что тут имеятся ввиду
Igomax вне форума Ответить с цитированием
Старый 23.05.2009, 19:37   #6
DM_bite
Участник клуба
 
Аватар для DM_bite
 
Регистрация: 29.07.2008
Сообщений: 1,091
По умолчанию

Дословно: Если a>b, то находить остаток от деления a на b, иначе - найти остаток от деления b на a, все это выполняеться пока a и b не равны 0.
Кто бы ты ни был - не думай о себе слишком (с)
DM_bite вне форума Ответить с цитированием
Старый 23.05.2009, 19:41   #7
Igomax
Пользователь
 
Регистрация: 19.04.2009
Сообщений: 36
По умолчанию

Спасибо большое
Igomax вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить прогамму, отысивающую наименьший общий составной делитель натуральных чисел N и M. Paskal Frontier Помощь студентам 7 16.12.2014 14:01
наибольший общий делитель Ge0rGE Помощь студентам 12 03.05.2009 20:09
Наименьший общий делитель Witaliy Помощь студентам 11 25.03.2009 13:20
Напишите функцию нахождения числа с = а^b Настенька..Блонди Помощь студентам 2 28.12.2008 15:21
нахождение наибольшего общего делителя и наименьшего общего кратного made in russia Помощь студентам 2 21.12.2008 23:36