Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include "gmp/gmp.h"
- #include "gmp/gmpxx.h"
- #include <vector>
- #include <stdio.h>
- #include <fstream>
- #include <string>
- int main()
- {
- std::cout << "reading data\n";
- std::vector<int> data;
- std::ifstream file;
- std::string line;
- file.open("out.txt");
- if (!file.is_open())
- {
- std::cout << "failed to open\n";
- }
- while (file)
- {
- std::getline(file, line);
- if(line.size() > 5)
- {
- data.push_back(std::stoi(line));
- }
- }
- file.close();
- std::cout << "data has been read. vector length: " << data.size() << '\n';
- int count = 0;
- for(unsigned long int i = 0; i < data.size(); i++)
- {
- std::cout << i << " iter\n";
- uint64_t num = data[i];
- mpz_t res;
- mpz_init(res);
- mpz_ui_pow_ui(res, 2, num);
- mpz_sub_ui(res, res, 1);
- std::cout << "start\n";
- int is_prime = mpz_probab_prime_p(res, 5);
- std::cout << "stop\n";
- if(is_prime == 2)
- {
- std::cout << "for sure prime: exp: " << num << '\n';
- }
- else if (is_prime == 1)
- {
- std::cout <<" maybe prime: exp: " << num << '\n';
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement