Try   HackMD

22-5 質數個數

CHAWTeam

目錄:DICE C語言程式破解

題目

請自訂函式countprime(),計算「小於等於某整數」的質數個數。

質數的定義為:除了1和它本身之外,沒有別的數可以整除它。

程式重複輸入,直到輸入數字小於等於1才停止。

輸入範例:
2
3
4
5
6
7
8
9
10
30
40
50
60
1

輸出範例:
1
2
2
3
3
4
4
4
4
10
12
15
17

程式碼

#include <stdio.h> int prime(int x) { if (x == 2) return 1; for (int i = 2; i < x; i++) { if (x % i == 0) return 0; } return 1; } int countprime(int x) { int times = 0; for (int i = 2; i <= x; i++) { if (prime(i) == 1) times++; } return times; } int main() { int x; scanf("%d", &x); while (x > 1) { printf("%d\n", countprime(x)); scanf("%d", &x); } return 0; }

執行

輸入

2
3
4
5
6
7
8
9
10
30
40
50
60
1

輸出

1
2
2
3
3
4
4
4
4
10
12
15
17

查看我們在HackMD上的所有筆記
目錄:DICE C語言程式破解


👉【幫我們一個忙!】👈

👋如果您喜歡這篇文章,請在下方按5個Like!
❤您的支持是我們最大的動力!

您只要登入帳號(Facebook、Google),在下方按5個Like,我們就會收到來自LikeCoin基金會的贊助。
您只需要支持我們,完全不會花到錢!