#include <iostream> #include <math.h> using namespace std; int main(void){ unsigned int N; while(true){ cin>>N; if(N==0) break; if((int)(sqrt(N))*(int)(sqrt(N))==N) cout<<"yes"<<endl; else cout<<"no"<<endl; } return 0; }
下面是錯誤的code:
#include <iostream> #include <math.h> using namespace std; int main(void){ long long int N; while(true){ cin>>N; if(N==0) break; if((int)(sqrt(N))*(int)(sqrt(N))==N) cout<<"yes"<<endl; else cout<<"no"<<endl; } return 0; }