所以我正在尝试编写一个找到素数的程序.该项目的真正目的只是学习多线程.首先,我编写了一个单线程程序,它在1分钟内找到了最多13,633,943.我的多线程版本只有10,025,627.
这是我的单线程程序的代码
#include <iostream>
using namespace std;
bool isprime(long num)
{
long lim = num/2;
if(num == 1)
{
return 0;
}
for(long i = 2; i <= lim; i++)
{
if (num % i == 0)
{
return 0;
}
else{ lim = num/i; }
}
return 1;
}
int main()
{
long lim;
cout << "How many numbers should I test: ";
cin >> lim;
for(long i = 1; i <= lim || lim == 0; i++)
{ …Run Code Online (Sandbox Code Playgroud)