Mam program który liczy sumę liczb pierwszych. Działa jednak zbyt wolno, jak go zmienić, aby był szybszy?
#include<iostream>
#include<cstdlib>
#include<cmath>
using namespace std;
bool czy_pierwsza(int n)
{
for(int i = 2; i * i <= n; i++)
if (n % i == 0)
return false;
return true;
}
long long sum (int a, int b)
{
long long suma=0;
for (int i = a; i <= b; i++) {
if (!czy_pierwsza(i)) {
continue;
}
suma += i;
}
cout<<suma<<endl;
}
int main()
{
int a,b,n;
for(cin>>n;n--;sum(a,b)) cin>>a>>b;
return 0;
}