輸入兩個整數 x 和 y,輸出兩者之間的素數個數(包括 x 和 y)。
兩個整數 x 和 y (1 ≤ x, y ≤ 10^5)。
輸出乙個整數,表示 x,y 之間的素數個數(包括 x 和 y)。
1 100
25
如果發現超時,則需要借助乙個工具。
一般我們判斷 x 是否為素數時,列舉 2~x-1,看是否有某個數可以整除 x。其實可以將列舉的範圍改為:2~sqrt(x),其中 sqrt 為求平方根函式。
破題:考查素數的判斷和自定義函式。
思路:1.首先定義兩個變數 m 和 n,代表 x 和 y,並將 m 和 n 輸入。
2.定義乙個計數器,並初始化為 0。
3.列舉 m 到 n 的每乙個整數,判斷當前數是否為素數(這裡用自定義函式判斷),若為素數,則計數器加 1。
4.輸出計數器。
5.完成判斷素數的自定義函式(在主函式上面):
(1)返回值是 bool 型,引數 i 為乙個整型。
(2)判斷該引數 i 是否為素數:用迴圈列舉 2~sqrt(i),若是有可以整除 i 的數,說明 i 不是素數,立即返回 false。若迴圈能自然結束,迴圈結束後返回 true。
完整**:
#include using namespace std;
bool prime(int i)
int sqr = sqrt(i);
for (int j = 2; j <= sqr; j++)
} return true;
}int main()
cout << cnt;
return 0;
}
小韋老師 神犇營 my0049 登入驗證
描述 我們在登入 的時候需要驗證密碼是否正確。現在請你寫乙個程式來驗證登入密碼是否正確。密碼為 5 位數。本題的輸入共 5 行,前 4 行是存進去的 4 個密碼,第 5 行是需要驗證的密碼,需要驗證該密碼是否為存進去的第三個密碼,若是,則輸出 yes 否則輸出 no 輸入本題的輸入共 5 行,前 4...
小韋老師 神犇營 my0184 開關燈
假設有 n 盞燈 n 為不大於 5000 的正整數 從 1 到 n 按順序依次編號,初始時全部處於開啟狀態 有 m 個人 m 為不大於 n 的正整數 也從 1 到 m 依次編號。第乙個人 1 號 將燈全部關閉,第二個人 2 號 將編號為 2 的倍數的燈開啟,第三個人 3號 將編號為 3 的倍數的燈做...
小韋老師 神犇營 my0163 完全數
求正整數 2 和 n 之間的完全數 一行乙個數 完全數 因子之和等於它本身的自然數,如 6 1 2 3 輸入n 1 n 5000 一行乙個數,按由小到大的順序。76破題 考查因子的概念和自定義函式。因子意思是 a 能被 b 整除 a b 0 則說明 b 是 a 的因子。思路 1.首先定義變數 n,並...