#25812: C language 簡易寫法


22207807 (會打Code的貓)

學校 : 逢甲大學
編號 : 156777
來源 : [140.134.241.201]
最後登入時間 :
2023-03-14 12:33:09
a121. 質數又來囉 | From: [114.137.217.137] | 發表日期 : 2021-06-24 14:42

#include<stdio.h>

#include<math.h>

int main () {

int a,b,judge,n;

while(scanf("%d %d",&a,&b) != EOF) {

n = 0;

for(int i = a; i <= b; i++) {

judge = 1;

for(int j = 2 ; j <= sqrt(i);j++) {

if(i % j == 0) {

judge = 0;

break;

}

}

if(judge == 1) {

n++;

}

}

if(a == 1) //測資515

printf("%d\n",n-1);

else

printf("%d\n",n);

}

return 0; 

n為計算a~b共有多少質數

judge判斷是否為質數 0代表否 1代表是

發現不是質數就馬上break 並且judge = 1

只要算該數到sqrt(s)即可

 
ZeroJudge Forum