Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <stdexcept>
- void Goldbach(int n, int &p, int &q)
- {
- std::vector<int> v;
- for(int i(2); i <= n; i++)
- {
- int counter(0);
- for(int j(1); j <=i; j++)
- {
- if(i % j == 0)
- counter++;
- }
- if(counter == 2)
- v.push_back(i);
- }
- bool ima(false);
- for(int i(0); i < v.size(); i++)
- {
- for(int j(0); j < v.size(); j++)
- {
- if(v[i]+v[j] == n)
- {
- p = v[i];
- q = v[j];
- ima = true;
- }
- if(p > q)
- {
- int z(p);
- p = q;
- q = z;
- }
- }
- }
- if(!ima) throw std::domain_error("Ne postoje takvi brojevi!");
- if(n <= 2 || n % 2 != 0) throw std::domain_error("Izuzetak!");
- }
- int main()
- {
- int a, b;
- Goldbach(3, a, b);
- std::cout << a << " " << b;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement