#7916: C 語言 WA求救


a7419 (東勢厝yang)


 WA (line:2010)
答案不正確
您的答案為: 質數 正確答案為: 非質數
 
#include<stdio.h>
int main(void)
{
int x;
while(scanf("%d",&x)!=EOF)
{
if(2<=x && x<=2147483647)
{
if(x==2 || x==3 || x==5 || x==7)
printf("質數\n");
else if((x%2)!=0 && (x%3)!=0 && (x%5)!=0 && (x%7)!=0)
printf("質數\n");
else
printf("非質數\n");
}
}
return 0;
}
 
剛發表那篇排版跑掉@@
從發一篇,求助...
#7917: Re:C 語言 WA求救


kevin8293330 (momocow)


 WA (line:2010)
答案不正確
您的答案為: 質數 正確答案為: 非質數
 
#include
int main(void)
{
int x;
while(scanf("%d",&x)!=EOF)
{
if(2<=x && x<=2147483647)
{
if(x==2 || x==3 || x==5 || x==7)
printf("質數\n");
else if((x%2)!=0 && (x%3)!=0 && (x%5)!=0 && (x%7)!=0)
printf("質數\n");
else
printf("非質數\n");
}
}
return 0;
}
 
剛發表那篇排版跑掉@@
從發一篇,求助...


你這一行判斷怪怪的...。

→ else if((x%2)!=0 && (x%3)!=0 && (x%5)!=0 && (x%7)!=0)

 

所以你的想法是說: 只要不是2, 3, 5, 7的倍數,就是質數囉?

 

舉個反例給你,121 = 11 * 11

在你這邊會被判成質數,但是他實際上不是質數。 

#7918: Re:C 語言 WA求救


a7419 (東勢厝yang)



你這一行判斷怪怪的...。

→ else if((x%2)!=0 && (x%3)!=0 && (x%5)!=0 && (x%7)!=0)

 

所以你的想法是說: 只要不是2, 3, 5, 7的倍數,就是質數囉?

 

舉個反例給你,121 = 11 * 11

在你這邊會被判成質數,但是他實際上不是質數。 

了解感謝。