![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
eldar219 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 34 Пол: Мужской Реальное имя: eldar Репутация: ![]() ![]() ![]() |
Составить программу для нахождения делителей некоторого числа
Плизз помогите как начать решать |
Unconnected |
![]()
Сообщение
#2
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Можно так:
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lapp |
![]()
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
for i:=1 to n do if (n mod i=0) then writeln(i); Вопрос: нужно ли делать цикл аж до n? )) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
![]()
Сообщение
#4
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
А почему бы и нет?) n тоже является делителем самого себя...
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата n тоже является делителем самого себя... Для того, чтобы это показать - совсем не обязательно цикл продолжать до N. Все проще гораздо... |
Unconnected |
![]()
Сообщение
#6
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Вот так:
Т.к. из двух множителей один не может быть меньше двух в нашем случае. Сообщение отредактировано: Unconnected - 6.04.2010 19:29 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lapp |
![]()
Сообщение
#7
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Вот так: Гм. Тогда, может быть, и начинать не с 1? for i:=1 to (n div 2) do if (n mod i=0) then begin ... Т.к. из двух множителей один не может быть меньше двух в нашем случае. ![]() Unconnected, думай дальше. Ты прошел некоторую часть пути, но не до конца )). -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
TarasBer |
![]()
Сообщение
#8
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
Можно даже до половины не идти.
-------------------- |
Lapp |
![]()
Сообщение
#9
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Можно даже до половины не идти. Именно так ![]() ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
![]()
Сообщение
#10
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Ммм ну не знаю, я с циклом for ничего больше не придумал, кроме как:
Procedure divz(n:integer); Но тут количество итераций то же самое вроде. Есть подозрение, что там можно делать допустим n div 5 и потом что-то домножать, но не додумался до конца) -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Client |
![]()
Сообщение
#11
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
![]() думаю, имелось в виду после цикла сделать writeln(n); И можно идти до значения корня из числа ![]() |
Unconnected |
![]()
Сообщение
#12
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Цитата И можно идти до значения корня из числа smile.gif И как ты себе это представляешь? ![]() -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Client |
![]()
Сообщение
#13
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
for i:=2 to round (sqrt(n) ) Сообщение отредактировано: Client - 8.04.2010 13:13 |
Lapp |
![]()
Сообщение
#14
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
for i:=2 to round (sqrt(n) ) И есть еще одна вещь, которую следует упомянуть.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Client |
![]()
Сообщение
#15
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
тут возможно:
1) можно включить и единицу 2) возможно есть делитель n/2 3) ну и само число n ![]() |
TarasBer |
![]()
Сообщение
#16
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
Народ, автор же ещё даже ни одного ответа не сделал. А то так всё и раскроем.
-------------------- |
![]() ![]() |
![]() |
Текстовая версия | 19.07.2025 22:28 |