![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 23.04.2012
Сообщений: 82
|
![]()
Здравствуйте! Напишите, пожалуйста, программу, которая бы выводила все простые шестизначные числа с суммой цифр, равной К.
|
![]() |
![]() |
![]() |
#2 |
Улыбаемся :)
Пользователь
Регистрация: 18.12.2012
Сообщений: 74
|
![]()
Самый простой, НО не очень корректный вариант.
Код:
Не забываем про весы.
![]() |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 25.04.2010
Сообщений: 254
|
![]()
О простых числах представление своеобразное...
помогать студентам - моя вторая профессия
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]() |
![]() |
![]() |
![]() |
#5 |
Улыбаемся :)
Пользователь
Регистрация: 18.12.2012
Сообщений: 74
|
![]()
Я нули не учитывал, т.к. отсчитывал от всех 1 до всех 9, принципе исправляется довольно просто.
хм, хотя верно, в моем случае, нулей вообще не будет. Благодарю за внимательность. Код:
Не забываем про весы.
![]() Последний раз редактировалось KooKish; 27.02.2013 в 21:43. |
![]() |
![]() |
![]() |
#6 |
Регистрация: 13.02.2013
Сообщений: 5
|
![]()
Собственно вот. Вроде все правильно выдает, только вычисляет долго:
Код:
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 13.02.2013
Сообщений: 5
|
![]()
Чёт совсем не то выводит...
Последний раз редактировалось programmerhpkk; 28.02.2013 в 02:57. |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 23.04.2012
Сообщений: 82
|
![]()
Программа должна выводить все ПРОСТЫЕ шестизначные числа.
|
![]() |
![]() |
![]() |
#9 |
Регистрация: 13.02.2013
Сообщений: 5
|
![]()
Ну моя и выводит все ПРОСТЫЕ шестизначные числа с суммой цифр, равной К.
Вот в процесе вывода, просто ждать пока весь цикл пройдет лень было. |
![]() |
![]() |
![]() |
#10 | ||
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]() Цитата:
"Лесенка" в коде немножко странно выполнена поэтому трудно с первого взгляда понять, что именно делается. Цитата:
Если пытаться подправить существующий код, то следует: 1. Проверку на простоту достаточно проводить по максимуму до sqrt(i), а не до i. 2. Цикл проверки на простоту можно прерывать, когда найден первый делитель, не обязательно искать все. 3. Целесообразно сначала подсчитывать сумму цифр (как менее ресурсоемкую операцию) и только потом - по условию - проверку на простоту (как более ресурсоемкую). 4. Перебор достаточно осуществлять только по нечетным числам, проверку на делимость начиная с 3. Ну а по-хорошему, нужно менять алгоритм, тогда 99% времени будет тратиться только на вывод на экран: 1. Составить таблицу простых чисел в диапазоне 1000000-999999 (решето Эратосфена). 2. Просмотреть таблицу, для простых подсчитать сумму цифр, при нужной сумме - вывод на печать. Минус такого алгоритма - необходимо несколько десятков Кбайт памяти (в простейшем случае 55К). Последний раз редактировалось s-andriano; 28.02.2013 в 08:06. |
||
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Даны целые числа р и q. Получить все делители числа q, взаимно простые c г. | Владан | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 03.12.2012 23:39 |
Задачи в ТурбоПаскаль: найти числа Армстронга и просуммировать числа в последовательности номера которых простые числа | Lena1808 | Помощь студентам | 1 | 17.05.2012 08:00 |
Простые числа... | cbuilderx | Помощь студентам | 3 | 08.03.2012 22:25 |
Простые числа | kuy | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 28.10.2011 14:44 |
Простые числа. С++ | mephistophel | Помощь студентам | 3 | 03.02.2011 22:12 |