
求素數,要求如圖

顯示我運行超時了,求解
uj5u.com熱心網友回復:
Finding prime numbers - Kenneth Haugland Different schemas for finding prime numbers explained with code http://www.codeproject.com/Articles/429694/Finding-prime-numbersuj5u.com熱心網友回復:
素數不是這樣寫的呀uj5u.com熱心網友回復:
#include <iostream>using namespace std;
int main()
{
unsigned long long a,b;
int c;
printf("請輸入大于1的自然數:\n");
while(scanf("%lld",&a)==1&&a>1)
{
b=2;
c=0;
while(a%b!=0)
b++;
if(b<a)c=1;
else c=0;
printf("%d %lld\n",c,b);
}
return 0;
}
找到素數17777777779
uj5u.com熱心網友回復:
我寫的0表示素數,題主把最后c的取值改一下即可uj5u.com熱心網友回復:
#include <iostream>using namespace std;
int main()
{
int a,b,c;
while(scanf("%d",&a)!=EOF)//EOF用在檔案讀寫表示檔案結尾,一般是-1,
{ //而如果scanf %d 輸入非數字回傳是0,所以將無限回圈
for(b=2;a%b!=0;b++)
if(b==a){c=1;} //只有b==a且a%b有余數時才賦值,這是不可能的 所有 C永遠不會被賦值1
if(b!=a){c=0;} //只有a%b==0,且b<a時,C才會被賦值0
printf("%d\n",c);//只有輸入的數是非素數 C的值才開始為0,要不然一直是任意值
}
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/133909.html
標籤:新手樂園
