С Новым годом! Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
 Аватар для Nter
4 / 4 / 5
Регистрация: 12.08.2010
Сообщений: 279

Получить все общие делители заданных чисел

15.07.2011, 16:08. Показов 2879. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день добрые люди! помогите пожалуйста разобраться с программой:

условие: даны целые числа m,n (m<>0, n<>0). Получить все их общие делители (положительные и отрицательные).
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.07.2011, 16:08
Ответы с готовыми решениями:

Найти все общие делители чисел
Дано два целие числа m,n.Найти все общие делители этих чисел.

Общие делители 2ух чисел. Алгоритм/блок-схема
Добрый день, не могли бы помочь со следующим заданием :Для двух целых чисел найти все их общие делители. - - необходима только блок схема с...

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

12
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
15.07.2011, 16:17
Цитата Сообщение от Nter Посмотреть сообщение
(положительные и отрицательные)
Они равны по модулю
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
var i,n,m:integer;
begin
readln (n,m);
if n>m then begin
  Inc (n,m);
      m:=n-m;
      Dec (n,m)
end;
write ('1,-1');
For i:=2 to n div 2 do 
 if ((n mod i)=0)and((m mod i)=0) then write (',',i,',',-i);
if (m mod n)=0 then write (',',n,',',-n);
End.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
15.07.2011, 16: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
uses crt;
var m,n,x,i:integer;
begin
clrscr;
repeat
writeln('Введите 2 целых числа, отличных от 0:');
readln(m,n);
until(m<>0)and(n<>0);
if abs(m)>abs(n) then
 begin
  x:=abs(m);
  m:=abs(n);
  n:=x;
 end
else
 begin
  n:=abs(n);
  m:=abs(m);
 end;
for i:=1 to m do
if(m mod i=0)and(n mod i=0) then
writeln(i,' ',-i);
readln
end.
Добавлено через 1 минуту
Pascal
1
to n div 2
Это неверно, само число тоже делитель.
1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
15.07.2011, 16:27
Puporev, Вы правы, нужно еще и на отрицательность проверять
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var i,n,m:integer;
begin
readln (n,m);
n:=abs(n);
m:=abs(m);
if n>m then begin
  Inc (n,m);
  m:=n-m;
  Dec (n,m)
end;
write ('1,-1');
For i:=2 to n div 2 do 
 if ((n mod i)=0)and((m mod i)=0) then write (',',i,',',-i);
if (m mod n)=0 then write (',',n,',',-n);
End.
Добавлено через 1 минуту
Цитата Сообщение от Puporev Посмотреть сообщение
Это неверно, само число тоже делитель.
приведите пример, когда мой код даст сбой?

Добавлено через 1 минуту
Цитата Сообщение от Puporev Посмотреть сообщение
to m do
Вы сделаете, как минимум, в два раза больше не нужных проходов, а это скажется на времени работы программы
1
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
15.07.2011, 16:29
Цитата Сообщение от go Посмотреть сообщение
а это скажется на времени работы программы
Интересно на сколько миллисекунд? Думаю не более 1.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
15.07.2011, 16:30
Цитата Сообщение от Puporev Посмотреть сообщение
Интересно на сколько миллисекунд? Думаю не более 1.
Послушайте, вы сами сказали что у меня неверно, приведите пример

Не по теме:

Если числа большие, то больше чем на одну :)

0
 Аватар для Zanexess
113 / 86 / 52
Регистрация: 22.10.2010
Сообщений: 227
15.07.2011, 22:02
go,
-3
1


В остальных случаях вроде нормально.
1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
15.07.2011, 22:08
Цитата Сообщение от Zanexess Посмотреть сообщение
-3
1
1,-1 (Кстати, я писал В АВС)
Что не правильно?

Добавлено через 43 секунды

Не по теме:

Все работает, мы ведь с двойки стартуем!

0
 Аватар для Zanexess
113 / 86 / 52
Регистрация: 22.10.2010
Сообщений: 227
15.07.2011, 22:10
Цитата Сообщение от go Посмотреть сообщение
Что не правильно?
Я и проверял в ABC, просто дважды выдает. Но ответ правильный.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
15.07.2011, 22:14
Цитата Сообщение от Zanexess Посмотреть сообщение
В остальных случаях вроде нормально.
И в этом случаи тоже нормально работает!

Добавлено через 40 секунд
Цитата Сообщение от Zanexess Посмотреть сообщение
просто дважды выдает
Извините, но вы пишете бред, выдает один раз (как и должно быть)


Добавлено через 3 минуты
Zanexess, Скрин-шот сбросить???
0
 Аватар для Zanexess
113 / 86 / 52
Регистрация: 22.10.2010
Сообщений: 227
15.07.2011, 22:15
Возможно сборки разные, но серьезно, у меня дважды)
Первый ваш код который - да, в нем все ок в этом случае.
Миниатюры
Получить все общие делители заданных чисел  
1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
15.07.2011, 22:22
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от Zanexess Посмотреть сообщение
Первый ваш код который - да
Для него 3,1
Извините
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var i,n,m:integer;
begin
readln (n,m);
n:=abs(n);
m:=abs(m);
if n>m then begin
  Inc (n,m);
  m:=n-m;
  Dec (n,m)
end;
write ('1,-1');
For i:=2 to n div 2 do 
 if ((n mod i)=0)and((m mod i)=0) then write (',',i,',',-i);
if ((m mod n)=0) and (n<>1) then write (',',n,',',-n);
End.
0
 Аватар для Nter
4 / 4 / 5
Регистрация: 12.08.2010
Сообщений: 279
17.07.2011, 10:20  [ТС]
Спасибо всем!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.07.2011, 10:20
Помогаю со студенческими работами здесь

Процедуры. Найти наибольшие общие делители пар заданных чисел
Заданы числа A, B, C, D. Найти наибольшие общие делители пар A и B, A и C, A и D. И если можно то поесниние....

Получить все общие делители (положительные и отрицательные)
Даны целые числа m, n (m&lt;&gt;0, n&lt;&gt;0). Получить все их общие делители (положительные и отрицательные). я сделал эдокое нечто которое...

Получить все общие делители заданных чисел
1.Факультету выделен стипендиальный фонд в размере f руб./мес. Результаты сессии таковы: n1 ─ «отличников», n2 ─...

Получить общие делители заданных натуральных чисел
помогите решить Даны натуральные числа n,m. Получить их общие делители (&lt;0 и &gt;0).

Определить все общие делители двух заданных натуральных чисел
Помогите написать подпрограмму на Си с заданным условием : Определите все...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru