■等比数列
等差数列とは、隣り合う2項の比が一定の数列である。
(例)
2、4、8、16、32、64、128 ・・・・・・①
上記(例:①の数列)について、ひとつひとつの値を「項」と呼び、
最初の項を「初項」、隣り合う2項の比を「公比」と呼ぶ。
したがって、①の数列は「初項2、公比2の等比数列」である。
■等比数列の公式
等比数列:a1、a2、a3、a4、a5、a6、a7・・・an・・・・・・②
上記②の等比数列について、初項をa、公比をrとするとき、第N番目の項an(一般項)は
an = ar(n-1)
と表すことができる。
■例題
等比数列の公式「 an = ar(n-1)」を使用し、
初項が3、公差-2の等比数列について、1から10番目までの項を求める。
■サンプルコード
# -*- Coding:UTF-8 -*-
# 等比数列の関数
# 引数
# a:初項(int型)
# r:公比(int型)
# n:第N項まで(int型)
# 戻り値
# 等比数列の値(list型)
def tohisuretsu(a:int, r:int, n:int) -> list:
# 空の配列をセット
ans = []
# ループ用初期値(ループカウンタ)
i = 1
# N番目の値が格納されるまで処理を繰り返す
while len(ans) < n:
# 等比数列の公式(a * r**(i-1))の結果を配列に格納
ans.append(a * r**(i-1))
i = i + 1
# 戻り値として、配列を返す
return ans
# メイン処理
if __name__ == '__main__':
# 初項3、公比-2、第10項まで
a = 3
r = -2
n = 10
# 等比数列の関数を呼び出す
result = tohisuretsu(a, r, n)
# 実行結果を表示
print(result)
■実行結果
[3, -6, 12, -24, 48, -96, 192, -384, 768, -1536]
コメント