昆明打印机耗材:1到1,000,000里有多少素数?

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/08 10:49:34
我知道这是个编程问题,可我对自己的程序不太自信,我的结果是70488,不知道各位高手的答案如何?

我的是78498

#include <iostream>
#include <math.h>
using namespace std;

bool isPrime(int n)
{
for(int i=2;i<=int(sqrt(n));i++)
{
if(n%i==0)
return false;
}
return true;
}

int main()
{
int s=0;
for(int i=2;i<=1000000;i++)
{
if(isPrime(i)) s++;
}
cout << s << endl;
}

可以编一个程序来实现

那你一个个检验啊,比如1到100,自己先数好,然后看你的程序算出来多少

这个问题用VB不好解决!因为1到1000000之间的数值太大了
如果用VB编写,一运行程序,程序就停止响应了.

先说一下素数的概念:所谓素数是指,一个自然数N除了能被1和自身所整除外,不被其他任何数整除.

下面以1到1000的自然数中有多少个素数为例
Private Sub Command1_Click()
Dim N, I, J, T, P As Long
N = 0
T = 1000
For I = 1 To 1000
J = 2 \'从2开始试除
Do While J <= I - 1
If I Mod J = 0 Then \'说明I不是素数
N = N + 1 \'不是素数的个数
Exit Do
Else
J = J + 1
End If
Loop
Next I
P = T - N
Print P
End Sub