#10491: C語言WA求救...QAQ


tmps880028 (唯雨)

學校 : 不指定學校
編號 : 54565
來源 : [49.216.62.242]
最後登入時間 :
2021-07-31 11:58:07
a007. 判斷質數 | From: [36.229.161.164] | 發表日期 : 2015-11-22 18:02

在測試執行都可以

但解題一直WA...(line2008)

剛學C沒多久

只想得到一些直觀的解法...

懇請大家幫幫忙(m(> д <)m)!!!

(↓以下我的code)

-------------------------------------------------

#include <stdio.h>

#include <math.h>

 

int main()

{

int x;

x<=2 && x>=2147483647;

while (scanf("%d",&x)!=EOF)

{

int i;

double n;

n=sqrt(x);

 

if( n<2 && n>1 )

{

printf("質數\n");

}

 

else

{

for( i=2 ; i<=n ; i++ )

{

if( x%i == 0 )

{

printf("非質數\n");

break;

}

else

{

printf("質數\n");

break;

}

}

}

 

return 0;

}

 

 
#10516: Re:C語言WA求救...QAQ


u10300088 (顏兒)

學校 : 臺北市立麗山高級中學
編號 : 47404
來源 : [140.120.220.40]
最後登入時間 :
2020-11-19 15:45:44
a007. 判斷質數 | From: [163.21.208.253] | 發表日期 : 2015-12-03 14:34

在測試執行都可以

但解題一直WA...(line2008)

剛學C沒多久

只想得到一些直觀的解法...

懇請大家幫幫忙(m(> д <)m)!!!

(↓以下我的code)

-------------------------------------------------

#include

#include

 

int main()

{

int x;

x<=2 && x>=2147483647;

while (scanf("%d",&x)!=EOF)

{

int i;

double n;

n=sqrt(x);

 

if( n1 )

{

printf("質數\n");

}

 

else

{

for( i=2 ; i<=n ; i++ )

{

if( x%i == 0 )

{

printf("非質數\n");

break;

}

else

{

printf("質數\n");

break;

}

}

}

 

return 0;

}

 

如果是新手的話最好別解這題@@

真要做的話去查查建表法吧

需要我的CODE在密我

 
#10998: Re:C語言WA求救...QAQ


sabina (流雲)

學校 : 高雄市立高雄女子高級中學
編號 : 57094
來源 : [220.142.174.30]
最後登入時間 :
2020-12-19 20:07:48
a007. 判斷質數 | From: [163.24.70.251] | 發表日期 : 2016-06-04 15:28

在測試執行都可以

但解題一直WA...(line2008)

剛學C沒多久

只想得到一些直觀的解法...

懇請大家幫幫忙(m(> д <)m)!!!

(↓以下我的code)

-------------------------------------------------

#include

#include

 

int main()

{

int x;

x<=2 && x>=2147483647;

while (scanf("%d",&x)!=EOF)

{

int i;

double n;

n=sqrt(x);

 

if( n1 )

{

printf("質數\n");

}

 

else

{

for( i=2 ; i<=n ; i++ )

{

if( x%i == 0 )

{

printf("非質數\n");

break;

}

else

{

printf("質數\n");

break;

}

}

}

 

return 0;

}

 


 



#include<stdio.h>

#include<math.h>

#define MAX 65537

int prime[6542],len=0 ;

void set_prime()

{

prime[len++]=2 ;

for (int i=3 ;i<MAX;i+=2 )

{

bool ok=1;

for (int j=0,k=floor(sqrt(i)) ;prime[j]<=k ;j++ )if (i%prime[j]==0)

{

ok=0;

break; 

}

if (ok)prime[len++]=i;

}

}

 

bool is_prime(int n)

{

for (int i=0 ,k=floor(sqrt(n));prime[i]<=k;i++ )

if (n%prime[i]==0)

return 0;

return 1;

}

 

int main()

{

set_prime() ;

 

int n;

while (~scanf("%d",&n))

printf("%s\n",is_prime(n)?"質數":"非質數") ;

}

}

 

這是我的CODE

可能對你來說太難

參考看看吧

 
ZeroJudge Forum