Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- // Проверка на простоту
- bool isPrime(unsigned long long x)
- {
- if (x < 2) return false;
- for (unsigned long long i = 2; i*i <= x; i++)
- {
- if (x % i == 0) return false;
- }
- return true;
- }
- int main()
- {
- int N;
- cout << "Сколько чисел Ферма вывести? ";
- cin >> N;
- for (int n = 0; n < N; n++)
- {
- // F_n = 2^(2^n) + 1
- // Осторожно с переполнением! Для больших n это число колоссально.
- unsigned long long power = 1ULL << (1 << n);
- // Но если n большой (скажем > 5), это превысит 64 бита.
- // В учебных целях (n <= 5) обычно хватает 64-битной переменной.
- unsigned long long F = power + 1;
- cout << "F(" << n << ") = " << F;
- if (isPrime(F)) cout << " (простое)\n";
- else cout << " (непростое)\n";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement