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

Найти ошибку в цикле - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализовать программу, которая содержит объявления собственного пространства имен и его использования http://www.cyberforum.ru/cpp-beginners/thread1252241.html
Реализовать программу, которая содержит объявления собственного пространства имен и его использования. Потом добавить не менее 5 директив препроцессора и объясните их использования. Добавить...
C++ Вычислить площадь выпуклого четырёхугольника ABCD Задача на С++ (Не могу разобраться) Нужно вычислить площадь выпуклого четырёхугольника ABCD, заданного длинами своих сторон a, b, c, d и одной из диагоналей e. Нужно составить блок схему и саму... http://www.cyberforum.ru/cpp-beginners/thread1252234.html
Как можно получить список твитов по хештегу с использованием api твиттера? C++
подскажите пожалуйста, как можно получить список твитов по хештегу с использованием api твиттера?
C++ Задача "Метки колдунов"
Всем доброго времени суток! Не приходят идеи по решению задачи: Задача 3. Метки колдунов В банке гоблинов есть сеть тоннелей, ведущих на поверхность из их подземных хранилищ. Схематичное...
C++ Изменения размерности динамического массива http://www.cyberforum.ru/cpp-beginners/thread1252190.html
недавно задался вопросом, а можно как-то изменить размерность динамического массива ну например есть такой массив int n; n=5; int *mas; mas=new int; потом я где-то в программе решил его...
C++ Сколькими способами человек может попасть в магазин МАГАЗИН На расстоянии N шагов от магазина стоит человек. Каждую минуту он выбирает, куда сделать шаг: к магазину или в противоположном направлении. Требуется написать программу, которая... подробнее

Показать сообщение отдельно
zss
Модератор
Эксперт С++
6483 / 6046 / 1983
Регистрация: 18.12.2011
Сообщений: 15,677
Завершенные тесты: 1
07.09.2014, 11:54
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
#include <iostream>
using namespace std;
 bool IsSimple(long long k)
 {
     if(k<=1)return true;
     for(long long i=2;i*i<=k;i++)
         if(k%i==0)return false;
     return true;
 }
 bool IsPow2Simple(long long  n)
 {
     long long S=1;
     for(long long i=1;i<=n;i++)
         S*=2;
     return IsSimple(S-1);
 }
int main()
{
    setlocale (LC_ALL,"Russian");
    for (long long i=2;i<=31;++i)
    {
           if( IsSimple(i) && IsPow2Simple(i) ) 
               cout << "   Число Мерсена(2^"<<i<<"-1) при значении "<< i;
           else 
               cout << "   Число Мерсена(2^"<<i<<"-1) при значении "<< i <<" НЕ";
           cout<<" является простым числом.  "<<endl;
    }
    system("pause");
}
long long понадобилось потому, что 2^31 не влезает в разрядную сетку.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru