整除問題是小學奧數的經典題型。
349956476571能被1~20裡的哪些數整除,可以直接排除2、4、6、8、10、12、14、15、16、18、20,只要看3、7、9、11、13、17、19,手算大概用了15分鐘。
如果記得奧數里的整除性規律,則至少可以提高到10分鐘以內。
整除性規律
2:個位是偶數
3:各位上數字之和是3的倍數
4:末兩位上的數能被4整除
5:個位是0或者5
6:個位是偶數,且各位數字之和是3的倍數
7:去掉個位後的數減去個位數的2倍是7的倍數。
8:末三位能被8整除
9:各位上數字之和是9的倍數
10:個位是0
11:奇位數字之和和偶位數字之和的差是11的倍數
12:能同時被3和4整除
13:去掉個位後的數加上個位數的4倍是13的倍數。
14:能同時被2和7整除
15:能同時被3和5整除
16:末四位能被16整除
17:去掉個位後的數減去個位數的5倍是17的倍數。
18:能同時被2和9整除
19:去掉個位後的數加上個位數的2倍是19的倍數。
感興趣的話,還可以推導一下每個規律。
這裡只以能被3整除為例。
但是用python,我們只要1分鐘不到。
print(349956476571 % 3)
print(349956476571 % 7)
print(349956476571 % 9)
print(349956476571 % 11)
print(349956476571 % 13)
print(349956476571 % 17)
print(349956476571 % 19)
在上一課介紹算術運算子的時候,介紹過 % 可以用來求餘數。而根據整除的定義
若整數b除以非零整數a,商為整數,且餘數為零, 我們就說b能被a整除。
所以用 349956476571 分別 % 3,7 ……,如果結果為0,就表示能夠整除。
%是python裡的一種算術運算子,而顧名思義,算術運算子可以用於數字類例項之間的運算。所以下面將進一步介紹python裡的數字類和算術運算子。
真實世界裡,物種是可以細分的,比如貓。
python裡的數字類,也被細分成3個子類。分別是
整型(int)- 通常被稱為是整型或整數,是正或負整數,不帶小數點。
浮點型(float)- 浮點型由整數部分與小數部分組成,浮點型也可以使用科學計數法表示(2.5e2 = 2.5 x 102= 250)
複數( (complex))- 複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型。
複數先不用管,整型(int)和浮點型(float)不就是我們數學裡說的整數和小數嘛。
在python裡,如何知道乙個例項是什麼類呢?python提供了乙個內建函式type()
當然,對於數字類,感覺它用處不大,因為我們一眼就能夠看得出來.
如上面的程式, 2 是整型這個類的乙個例項, a 是它的名字:變數名
2.5 和 2.5e2 都是浮點型這個類的例項,變數名分別是 b,c
但是沒有關係,先記住這個內建函式,後面還會用到它。
python裡的算術運算子不多,並且含義和數學上學的幾乎一致,所以只要看下面這張**就可以了。
注意 乘法運算子在python裡是 * ,除法運算子是 /
另外,python裡還補充了3個有用的運算子,分別是 %,** ,//
要充分理解這些運算子,建議自己都執行一些例子,比如 // 運算子是四捨五入取整,還是去尾法取整,自己試一下吧。
如圖,有100個燈泡,編號從1到100,開始都是熄滅的。
有100個人,編號從1到100。
從編號1的人開始,依次去操作燈泡,如果燈泡編號是人編號的倍數,就按一下燈泡的開關,燈泡如果是滅的,按一下開關會變亮,燈泡如果是亮的,按一下開關會熄滅。
1號人: 所有燈泡編號都是1的倍數,所以把所有燈泡開關都按一次,全部變亮。
2號人: 燈泡編號是偶數才是2的倍數,按這些燈泡開關,燈泡編號是偶數的都熄滅
3號人: ……
請問,最後,哪些編號的燈泡是亮著的?
10以內四則運算 程式
注意10以內的隨機數是如何生成的。另一種方法,rand 10,結果也為0 9之間的數 rand max是乙個符號常量,定義在cstdlib中。在visual c 中,它的值為32767.rand 每次呼叫會生成乙個0 rand max整數1 計算機四則運算,10以內 2 include 3 incl...
隨機生成30道100以內的四則運算題
設計思路 1 利用隨機數法隨機生成兩個隨機數 1.1控制隨機數在100以內 1.2隨機數不等於0 2 運算子的問題 1.1運用求餘方式得到的1,2,3,4分別表示 3 真分數的表示方法 1.1還是利用隨機數法生成兩個隨機數 1.2比較生成的隨機數的大小,小的作為分子,大的作分母,得到真分數 4 輸出...
位運算題目
今天看到牛客網的一些題目,非常經典。解法基本也都很熟悉,所以特地做個總結,後續慢慢補充。先上題目 數字中的二進位制有多少個1 這裡的數字並不關心它的符號,所以即便是負數,只需要得到二進位制中1的個數就可以了。但是在python中,對於負數的右移運算,符號位會保留,這樣在執行迴圈語句的右移操作時,首位...