我需要創建一個程序,以'N'作爲輸入,並顯示前N個素數,最後將它們相加... 這是我的代碼,但它不起作用。 (它循環在:「if((num == 2)||(num == 3))」)總結前N個素數
你能幫助我嗎? 在此先感謝。我不能用函數和數組。
代碼:
#include "stdafx.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int n, num = 1, rest, cont = 0, sum = 0;
bool exit = false;
int e = 1;
cout<<"How many prime number do you want to show? ";
cin>>n;
while (cont <= n)
{
num++;
if ((num == 2) || (num == 3))
{
cout<<num<<endl;
sum += num;
cont++;
}
else if (num%2 == 0)
{
}
else
{
bool exit = false;
int div = 3;
while (!exit)
{
rest = num%div;
if (num == div)
{
exit = true;
cout<<num<<endl;
sum += num;
cont++;
}
if (rest == 0)
exit = true;
div++;
}
}
num++;
}
cout<<"Sum: "<<sum<<endl;
return 0;
}
「我不能使用的功能。」 - 那麼'_tmain()'符號在那裏做什麼? – 2013-01-05 20:42:13
「它不起作用」沒有提供信息。對於任何願意幫助你的用戶來說都沒用。 – Jack
「不起作用」不是問題。請優化您的問題以獲得一個很好的答案。 – Khalefa