Форум программистов, компьютерный форум CyberForum.ru

Вывести на экран первые пять совершенных чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ассемблерные вставки в C++ http://www.cyberforum.ru/cpp-beginners/thread849518.html
Собственно сабж ...: Имею следующий код : short Carry = 2; unsigned short Mas; Mas = 12; Mas = 13; Mas = 14; Пытаюсь , в ассемблерной вставке , обратиться к первому элементу массива (не нулевому) ... Делаю так : _asm{ MOV AX,Mas+Carry;
C++ Куда дальше ? Хорошо освоил C++ STL Qt Win32 Api, но судя по всему для трудоустройства недостаточно . Куда дальше ? Мне говорили о возможности участия в свободных проектах но как начать я не нашел. Стоит ли начинать учить Java ? http://www.cyberforum.ru/cpp-beginners/thread849515.html
Указатели в базовом классе на базовый класс и производный класс C++
Пишу контейнер "Бинарное дерево поиска" для частотного словаря. С самим контейнером особо вопросов нету. Вопрос по поводу элементов в нём. Я создал базовую структуру, описывающую элемент обычного бинарного дерева.
Пересечение множеств C++
Здравствуйте. У меня следующая задача: Даны 2 множества A и B, причем множество B отсортировано по возрастанию. Необходимо получить индексы тех элементов множества А, которые содержатся в множестве В. Как это можно сделать максимально быстро на С++? Пример: A={4 3 5 1 7 0 2}; B={1 2 3}; => Ответ = {2 4 6};
C++ Сравнение векторов http://www.cyberforum.ru/cpp-beginners/thread849456.html
Вот имеется вектор <bool> длиной допустим 5, а второй вектор <bool> длиной 200. Вот мне надо сравнить первый вектор с частью второго, зная размер первого. Вот так не получилось if(fs == rediska(nac, nac + k), где k это размер первого вектора, nac это итератор на начало вектора rediska. Подскажите пожалуйста, как сравнивать с частью.
C++ Заполнить массив А(10) случайными числами. Подсчитать и вывести на экран количество элементов массива, кратных 7 и не кратных 3 1) Заполнить массив А(10) случайными числами. Подсчитать и вывести на экран количество элементов массива, кратных 7 и не кратных 3. 2)Дан массив R(5). Значения элементов массива ввести с клавиатуры. Найти сумму значений Ri – Rj , где 0<=i <j <=N. Например: Массив R: 10 5 4 3 8 Решение: (10-5)+(10-4)+(10-3)+(10-8)+(5-4)+(5-3)+(5-8)+(4-3)+(4-8)+(3-8). Ответ: 12 Помогите пожалуйста! подробнее

Показать сообщение отдельно
UnsKneD
алкокодер
 Аватар для UnsKneD
153 / 149 / 11
Регистрация: 27.12.2012
Сообщений: 548
26.04.2013, 22:03     Вывести на экран первые пять совершенных чисел
KattyBelka, прототип функции добавьте.

Добавлено через 2 часа 1 минуту
На скорую руку накидал такой вариант.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
long long int sumDivisors( long long int n ){
    long long int sum = 0;
    if( n%10 == 6 || n%10 == 8 ){
        for( long long int i = 1; i<=n/2; i++){
            if( n%i == 0 ){
                sum+=i;
            };
        };
    };
    return sum;
}
 
bool compare( long long int n, long long int sumDivisors){
    if( n == sumDivisors ){ return true; };
    return false;
}
 
int main(){
    for( long long int i = 1, j = 0; j<1; i++){
        if( compare( i, sumDivisors(i) ) ){
        printf("%d\n", i); j++; };
    }
    
    int sum = 0;
    for( long long int i = 1, j = 0; j<4; i+=2){
        if( compare( sum+=i*i*i, sumDivisors(sum) ) ){ printf("%d\n", sum); j++; };
    }
    return 0;
}
 
Текущее время: 06:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru