時間限制:1 秒
內存限制:32 兆
特殊判題:否
提交:13384
解決:6067
- 題目描述:
-
給定一個數n,要求判斷其是否爲素數(0,1,負數都是非素數)。
- 輸入:
-
測試數據有多組,每組輸入一個數n。
- 輸出:
-
對於每組輸入,若是素數則輸出yes,否則輸入no。
- 樣例輸入:
-
13
- 樣例輸出:
-
yes
- 來源:
#include<iostream>
#include<stdio.h>
#include<math.h>
using namespace std;
bool Issu(int x){
if(x<=1)
return false;
int tmp=(int)sqrt(x)+1; //爲什麼要這樣,因爲如果將sqr寫在for循環裏面則每循環一次就要執行一次sqr(x)
for(int i=2;i<tmp;i++){
if(x%i==0)
return false;
}
return true;
}
int main(){
int n;
while(scanf("%d",&n)!=EOF){
if(Issu(n)==true) //這段可以用一行代碼來實現puts(Issu(x)?"yes":"no");
{printf("yes\n");}
else{ //注意else不能省略
printf("no\n");}
}
return 0;
}