ACM 入門1169
阿新 • • 發佈:2018-10-31
/* 題目描述
輸入一個大於1的正整數,判斷它是否為素數(prime,又稱質數)。
如果這個數是素數,則輸出yes,否則輸出no。 末尾輸出換行。
輸入 一個大於1的正整數
輸出 根據輸入資料,判斷概述是否為素數。如果這個數是素數,則輸出yes,否則輸出no。
注意末尾輸出換行。
樣例輸入 7
樣例輸出 yes */
少一位數法
#include<stdio.h> int main() { int n,i=1; scanf("%d",&n); for(i=2;i<=n-1;i++) //判定素數,萬分記住,一定需要判定其-1或平方根和2區間能否有整數整除; if(n%i==0) break; //如果其除以i等於0,立刻停止進行判定 if(i>n-1)printf("yes\n"); //如果i以及超過了原值,證明沒有數可整除,素數 else printf("no\n"); //反之選擇可以。 return 0; }
平方根法
#include<stdio.h> #include<math.h> int main() { int n,i=1; int k; scanf("%d",&n); k=sqrt(n); for(i=2;i<k;i++) //判定素數,萬分記住,一定需要判定其-1或平方根和2區間能否有整數整除; if(k%i==0) break; //如果其處以i等於0,立刻停止進行判定 if(i>=k)printf("yes\n"); //如果i以及超過了原值,證明沒有數可整除,素數 else printf("no\n"); //反之選擇可以。 return 0; }