2 / 2 / 0
Регистрация: 07.06.2016
Сообщений: 63
|
||||||
1 | ||||||
В цикле вывести на экран все совершенные числа14.07.2016, 00:27. Показов 1787. Ответов 13
Метки нет (Все метки)
продолжение того же задания, но уже с дополнением... Создать функцию, которая будет иметь 1-н целочисленный параметр А, и в качестве своего значения возвращать true/false если число А совершенное.
После задания с клавиатуры границ диапазона [a;b] в цикле вивести на екран все совершенные числа... в результате доходит до 8128, останавливается и не дает выйти из консоли... пробовал менять типы на long, не помогло...
0
|
14.07.2016, 00:27 | |
Ответы с готовыми решениями:
13
Вывести на экран все совершенные числа, меньшие N Вывести все совершенные числа на экран и указать количество совершенных чисел меньших n Вывести все совершенные числа на экран и указать количество совершенных чисел меньше n вывести все совершенные числа. |
14.07.2016, 05:48 | 3 |
А в чем проблема: summ==a булево, его и возвращаем. Почему в if(sum==a) можно, а в return нельзя? Другое дело, что совершенное число равно 1+сумма простых делителей без самого числа (а на всех) Но это уже математика, а не кодирование.
Советую ТС ознакомиться с Проверка числа на простоту и разложение на простые множители
0
|
Модератор
13505 / 10756 / 6411
Регистрация: 18.12.2011
Сообщений: 28,712
|
||||||
14.07.2016, 07:10 | 7 | |||||
В отладчике поставьте останов и убедитесь, что программа добросовестно перебирает числа из заданного диапазона.
Цитирую Википедию: Да, еще в программе ляп: a. Что возвращается, если sum не равно a? b. Опять масло масляное!
0
|
2 / 2 / 0
Регистрация: 07.06.2016
Сообщений: 63
|
|||||||||||
14.07.2016, 09:18 [ТС] | 8 | ||||||||||
zer0mail, можно тогда поправку к коду с т.з. математики?
Ко всем: по вашим словам, если поменять
0
|
Модератор
13505 / 10756 / 6411
Регистрация: 18.12.2011
Сообщений: 28,712
|
|
14.07.2016, 09:29 | 9 |
Программа не стопорится, а просто ООООчень долго считает.
Даже на диапазон 33550330 - 33550340 на моем компьютере уходит 5 секунд.
0
|
Модератор
13505 / 10756 / 6411
Регистрация: 18.12.2011
Сообщений: 28,712
|
|
14.07.2016, 09:56 | 11 |
MansMI, Вы не правы.
Цитирую справочник MS:
0
|
Модератор
13505 / 10756 / 6411
Регистрация: 18.12.2011
Сообщений: 28,712
|
|
14.07.2016, 10:42 | 13 |
MansMI,
2147483647 явно больше 33550340
0
|
Заблокирован
|
|
14.07.2016, 10:47 | 14 |
0
|
14.07.2016, 10:47 | |
14.07.2016, 10:47 | |
Помогаю со студенческими работами здесь
14
Цикл: Вывести все совершенные числа и все пары дружественных чисел из промежутка [2, n]. Для заданного натурального числа N вывести в столбик все совершенные числа меньшие N c++ Найдите все совершенные числа от 1 до 1000 и выведите их на экран Найдите все совершенные числа от 1 до 1000 и выведите их на экран Вывести все совершенные числа в диапазоне от 1 до N Вывести все совершенные числа, меньшие n Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |