程式的優勢就是可重複做有規律、結構的事。
程式很適合處理數學中,數列的問題。
在此節,將計算出以下堆垛的數量。
1(A). 等差數列 1,2,3,...,10
使用指令 seq_d1 = [i for i in range(1,11)],
要使用 seq_d1 來顯示結果。
range(1,11) 的結果是不包含 11 的。
[... for ...] for 前面放數列的一般項表示式
變數名稱可以更換。例如 [k for k in range(1,11)] 也會得到相同結果。
1(B). 公差為 2 的等差數列 1, 3, ..., 19
seg_d2 為公差為 2 的等差數列,共 10 項。
range 的第三個參數為增量,例如 range(1,21,2) 表示每次 +2
range 只有兩個參數時,預設增量為 1。
1(C). 公差為 -3 的等差數列
seq_d3 為首項 40 ,公差為 -3 的等差數列,共 10 項。
只要把 range(40,1,-3) 的參數改為 -3 。
2(A). 數列的總和
seq_d1, seq_d2 的總和,記為 sum_d1, sum_d2
使用 sum(seq_d1) 即可計算一個數列的總和。
2(B). 平方級數 1+ 4 + 9 + .... + 100
seq_s1 為平方項構成的數列: 1 ,4, 9, ..., 100 用 sum(seq_s1) 計算其總和
3(A). 調和數列 : 1, 1/2, 1/3, 1/4,..., 1/10
調和數列(Harmonic series) 是指「倒數」構成的數列,
請定義一個函數 sumHarm(),此函數會回傳下列的數值
請計算其 sumHarm(4), sumHarm(16), sumHarm(256) 的值
3(B) list 內使用函數:製作調和數列總和的數列
製作數列 sumHarms: sumHarm(1) , sumHarm(2)..., sumHarm(20)
在 list 內的一般項也可以使用函數,
使用 round(...,3) 來取其合的概數。
4(A) 三角垛數列
計算 10 層三角垛的數量
4(B) 三角垛數列
利用公式來計算三角數與三角垛
Ex1(A) 等比數列
請建立以下等比數列,各 10 項:
Ex1(B) 等比數列
請先試著列出公比為 、首項 的等比數列,並找出 的最小整數 值。
請先試著列出公比為 、首項 的等比數列,並找出 的最小整數 值。
在條列前,先試當作些估計合理的範圍。
之後,可利用條件迴圈來讓程式更快找出此解。
也可以利用對數的概念來計算出 n 值
Ex2(A) 級數和
請試著計算以下級數至第 10 項, 100 項 1000 項