#6823: 疑惑!!


ms0557647 (DOGOD)

學校 : 不指定學校
編號 : 26411
來源 : [36.226.163.22]
最後登入時間 :
2022-04-22 19:43:08
a007. 判斷質數 | From: [114.36.70.189] | 發表日期 : 2012-07-22 23:07

以下是在下的程式碼
本為WA(line23 將非質數判斷為質數)
然而 在下只作   些微的修改 (在下自覺幾無影響)   卻又通過
在下完全不明白是怎回事 懇請各位大大指點迷津 
 
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int x,D;
while(cin >>x)
{
D=0;
if(x==1)
cout<<"非質數"<<endl;
else
{
for(int i=2; i<=sqrt(x); i++)
{
if(x%i!=0)
;       -------------->在下後改為 : continue; 
else
D++;      ---------->在下後改為 : D=1;
}  
x=(D>=1) ? 1 : 0 ;     -------------->在下後改為 : x=(D==1) ? 1 : 0 ;
if(x)
cout<<"非質數"<<endl;
else
cout<<"質數"<<endl;
}
}

return 0;
}

 
#6828: Re:疑惑!!


passerr (20130326 0340 48)

學校 : 不指定學校
編號 : 8516
來源 : [125.224.93.117]
最後登入時間 :
2024-09-05 12:09:52
a007. 判斷質數 | From: [125.224.247.195] | 發表日期 : 2012-07-23 21:53

以下是在下的程式碼
本為WA(line23 將非質數判斷為質數)
然而 在下只作   些微的修改 (在下自覺幾無影響)   卻又通過
在下完全不明白是怎回事 懇請各位大大指點迷津 
 
#include
#include
using namespace std;
int main()
{
int x,D;
while(cin >>x)
{
D=0;
if(x==1)
cout<<"非質數"<
else
{
for(int i=2; i<=sqrt(x); i++)
{
if(x%i!=0)
;       -------------->在下後改為 : continue; 
else
D++;      ---------->在下後改為 : D=1;
}  
x=(D>=1) ? 1 : 0 ;     -------------->在下後改為 : x=(D==1) ? 1 : 0 ;
if(x)
cout<<"非質數"<
else
cout<<"質數"<
}
}

return 0;
}

 
我拿你這個去餵,過了!!
 #include <iostream>
#include <cmath>
using namespace std;
int main()
{
int x,D;
while(cin >>x)
{
D=0;
if(x==1)
cout<<"非質數"<<endl;
else
{
for(int i=2; i<=sqrt(x); i++)
{
if(x%i!=0)
;        
else
D++;      
}  
x=(D>=1) ? 1 : 0 ;     
if(x)
cout<<"非質數"<<endl;
else
cout<<"質數"<<endl;
}
}

return 0;
}
 
ZeroJudge Forum