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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Олег@tor
9 / 9 / 1
Регистрация: 22.10.2009
Сообщений: 24
#1

Найти все числа Мерсена, меньшие заданного n - C++

07.11.2009, 16:42. Просмотров 538. Ответов 2
Метки нет (Все метки)

Не могли бы написать код программы (если можно без ООП и с использованием if или switch или for или......... "'элементарных" операторов ).

Задача: Дано натуральное число n. Найти все числа Мерсена меньшие n. (Простое число называется числом Мерсена, если оно может быть представлено в виде 2^p -1, где p - тоже простое число.
Например, 31=2^5 -1 -число Мерсена).

Заранее благодарен!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2009, 16:42     Найти все числа Мерсена, меньшие заданного n
Посмотрите здесь:
C++ Найти все совершенные числа, меньшие заданного
Найти все совершенные числа меньшие заданного C++
C++ Вывести все пары близнецов меньшие заданного числа
C++ Распечатать все простые сдвоенные числа меньшие заданного
C++ Заменить все элементы, меньшие заданного числа, этим числом
C++ Заменить все элементы, меньшие заданного числа, этим числом
C++ Заменить все элементы массива, меньшие заданного числа, этим числом
Все элементы массива, меньшие заданного числа, увеличить в два раза C++
C++ В последовательности целых чисел заменить все элементы, меньшие заданного числа
В последовательности целых чисел заменить все элементы, меньшие заданного числа, этим числом C++
Найти все числа меньшие числа Мерсенна C++
Вывести на консоль все числа Мерсена в заданном интервале C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rrrFer
Заблокирован
07.11.2009, 17:35     Найти все числа Мерсена, меньшие заданного n #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using std::cout;
using std::cin;
int main(){
    unsigned int n,m,i,t,p;
    cin>>n;
    for(i=1;i<n;i++){
        for(m=2;m<i;m++)
            if(!(i%m))
                break;
        if(i==m)
            for(t=1,p=2;t<i;t++,p*=2){
                for(m=2;m<t;m++)
                    if(!(t%m))
                        break;
                if(t==m&&i==p-1)
                    cout<<i<<std::endl;
            }
    }
    cin.get(),cin.get();
    return 0;
}
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
07.11.2009, 17:38     Найти все числа Мерсена, меньшие заданного n #3
Олег@tor, тебе вчера ответили в Числа Мерсена.. Тема закрыта.
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru