私はPythonの関数の概念を学んでおり、ちょっとしたアドバイスを使うことができます。関数の和集合 - 以前の回答を継続的に追加しますか?
入力1から20に対して代数関数m(i) = (i)/(i + 1)
を使用するプログラムを作成しようとしています。これまでのところ、私はそれを実現しましたが、今度は新しい出力ごとにすべての以前の出力をまとめたいと思います。私はこれの数学的な概念を把握していない可能性があり、それが私のコードで正しく理解できない理由です。
理想的には、これは私が取得しようとしている結果表のようになります。
i m(i)
1 0.50
2 1.17
...
19 16.40
20 17.35
現在、私が持っているものです。
def equation(i):
mi = ((i)/(i + 1))
return mi
def main():
for i in range(1,21):
print(format(i, '2d')," ",format(equation(i), '.2f'))
main()
私は貝に見ている出力は次のとおりです。
1 0.50
2 0.67
3 0.75
4 0.80
5 0.83
6 0.86
7 0.88
8 0.89
9 0.90
10 0.91
11 0.92
12 0.92
13 0.93
14 0.93
15 0.94
16 0.94
17 0.94
18 0.95
19 0.95
20 0.95
私は良いスタートを切っているように感じますが、新しい行ごとにどのようにm(i)を一緒に追加できますか?私が掲示した「理想」の例のように、それは1.17を与える0.5 + 0.67をとります。
ありがとうございます!
私はそれが単純だったとは信じられません、ありがとうHydex!今すぐコードの部分を勉強し、それがなぜ機能するのかを理解する必要があります – Norr
再帰関数の詳細については、このリンクを参照してください[python-course](http://www.python-course.eu/recursive_functions.php )と[Wiki](https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_3/Recursion) – Hydex