Аватар для Кротяка
7 / 7 / 1
Регистрация: 20.12.2010
Сообщений: 392

Поиск совершенного числа в массиве

07.12.2013, 04:24. Показов 6925. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо найти в массиве все совершенные числа в диапазоне от n1 до n2. Будем учитывать, что массив уже заполнен.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    //задаём диапазон исследуемых элементов
    cout<<"Введите n1 = ";
    cin>>n1;
    cout<<"Введите n2 = ";
    cin>>n2;
 
    //находим совершенные числа
    int x;
    for(i = mas[n1]; i <= mas[n2]; n1++){
        x = i;
        for(j = 1; j < x; j++){
            if(x % j == 0)
                p+=j;
        }
        if(p == i)
            cout<< "Число " << i << " совершенное\n";
        p = 0;
    }
Программа работает неверно. Подскажите, в чём моя ошибка..?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.12.2013, 04:24
Ответы с готовыми решениями:

Поиск совершенного числа N через цикл for
Сложить программу с помощью цикла for Задание Дано некоторое число N. Сложить программу поиска “совершенных” чисел меньших за N....

Поиск совершенного числа
Совершенное число́ (др.-греч. ἀριθμὸς τέλειος) — натуральное число, равное сумме всех своих собственных делителей (т. е. всех положительных...

Поиск совершенного числа
Здравствуйте ! Подскажите как найти совершенное число , т.е. число равное сумме делителей ( 6=1+2+3 или 28=1+2+4+7+14) . Те. ввести любое...

21
 Аватар для Кротяка
7 / 7 / 1
Регистрация: 20.12.2010
Сообщений: 392
09.12.2013, 18:34  [ТС]
Студворк — интернет-сервис помощи студентам
katsidelin, программа находит совершенные числа, работает правильно, спасибо. Но сообщение, что таких чисел нет до сих пор не выводится...вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//находим совершенные числа
    p = 0;
    f = false;
    for(i = n1; i <= n2; n1++){
        for(j = 1; j < mas[i]; j++){
            if(mas[i] % j == 0 && j != mas[i])
                p+=j;
        }
        if(p == mas[i] && mas[i] > 0){
            cout<< "Число " <<mas[i]<< " совершенное\n";
            f = true;
        }
        p = 0;
        i++;
    }
 
    if(f = false)
        cout<< "Совершенных чисел в данном диапазоне не существует\n";
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
09.12.2013, 18:41
Цитата Сообщение от Кротяка Посмотреть сообщение
Но сообщение, что таких чисел нет до сих пор не выводится...вот код:
см комментарии:
Цитата Сообщение от Кротяка Посмотреть сообщение
C++
1
2
if(f = false)// здесь нужно так: if(f==false) или так: if(!f)
 cout<< "Совершенных чисел в данном диапазоне не существует\n";
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.12.2013, 18:41

Определение совершенного числа
Напишите программу, определяющую, является ли введенное пользователем натуральное число совершенным, то есть равно ли оно сумме своих...

Определение совершенного числа в delphi
Я - всем чайникам чайник. Помогите пожалуйста составить программу в delphi, которая могла бы определить, является ли число N(натуральное...

Функция нахождения совершенного числа
Народ, помогите написать программу с функцией нахождения совершенного числа в диапазоне от 1 до 1000.

Написать программу поиска совершенного числа.
Задали две задачи - хз как решить, но уверен что они очень простые, а я очень глуп. 1) К любому натуральному числу прибавить первую...

Написать функцию определения совершенного числа
Написать функцию определения совершенного числа нужно оформить в виде фунции и завернуть все в модуль!!!!!!!! Помогите пожалуйста ...


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Опции темы

Новые блоги и статьи
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru