Циклические алгоритмы, Помогите решить к паре!!!! |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Циклические алгоритмы, Помогите решить к паре!!!! |
Flatterer19 |
Сообщение
#1
|
Группа: Пользователи Сообщений: 2 Пол: Мужской Репутация: 0 |
Написать программу, которая подчитывает количество чисел кратных k, но некратных l, в диапазоне от m до n.
|
Lapp |
Сообщение
#2
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
x:=0; -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Flatterer19 |
Сообщение
#3
|
Группа: Пользователи Сообщений: 2 Пол: Мужской Репутация: 0 |
|
Lapp |
Сообщение
#4
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Можно поподробнее вместе с условием с началом программы, я вообще новичок в этом... ... а я старичок на такое разводиться.Тебе написана вся функциональная часть программы. Добавь описания, ввод и вывод - и все. Не знаешь, как - бери учебник и вперед. А если тебе нужно все к паре в ротик положить - тогда вали вообще из программирования, и без тебя дышать будет легче.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
andriano |
Сообщение
#5
|
Гуру Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: 28 |
А если так?
for i:=((m + k - 1) div k) to (n div k) do if (i*k mod l>0) then Inc(x); |
Lapp |
Сообщение
#6
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
А если так? А зачем?for i:=((m + k - 1) div k) to (n div k) do if (i*k mod l>0) then Inc(x); -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
andriano |
Сообщение
#7
|
Гуру Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: 28 |
А зачем? Ну, если требуется работать в диапазоне от 0 до МахInt, причем k и l имеют порядок sqrt(MaxInt), то разница, думаю, будет хорошо заметна (по крайней мере, для 32-разрядного компилятора).В любом случае, компьютер хоть и железный, но вряд ли целесообразно заставлять его делать лишнюю работу. |
Lapp |
Сообщение
#8
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
В любом случае, компьютер хоть и железный, но вряд ли целесообразно заставлять его делать лишнюю работу. Гм. Эта "лишняя работа" делается исключительно согласно условию задачи (см. название темы). В противном случае все решается одной формулой вообще без циклов.В этом ключе - любая учебная задача есть лишняя работа. Хотя, конечно, согласен, что условие лучше давать более разумное. Иначе скоро мы увидим что-нить типа "подсчитать в цикле количество натуральных чисел от одного до 100" -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
andriano |
Сообщение
#9
|
Гуру Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: 28 |
1. Предложенный вариант удовлетворяет исходному условию "циклическая задача".
2. Что касается именно учебных задач, то IMHO нужно с самого начала учить программировать правильно, а не сначала учить писать как попало, а потом переучивать. А "правильно" - это значит оптимальным при заданных условиях и ограничениях способом. Сообщение отредактировано: andriano - |
Текстовая версия | 23.12.2024 21:11 |