#6823: 疑惑!!


ms0557647 (DOGOD)


以下是在下的程式碼
本為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)


以下是在下的程式碼
本為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;
}