わからないポイントがわからないので、直截の回答じゃなくて確認になってしまいますが。
python
1def sum3():
2 print("test:3")
3 print(sum2())
4
5
6def sum2():
7 print("test:2")
8 print(sum1())
9
10
11def sum1():
12 print("test:1")
13 print(sum0())
14
15
16def sum0():
17 return 0
18
19
20sum3()
の結果が
plain
1test:3
2test:2
3test:1
40
5None
6None
になるのは理解できますか?
sum3
もsum2
もsum1
もreturn文で値を返してないので結果を表示させるとNone
が出力される、という例です。
これがわからない状態で、再帰関数のバージョンを見てもわかるわけがないと思いましたのでひとまず。
対応が明になるバージョン
python
1def sum3():
2 print("test:3")
3 print("sum2の結果は" + str(sum2()) + "です")
4
5
6def sum2():
7 print("test:2")
8 print("sum1の結果は" + str(sum1()) + "です")
9
10
11def sum1():
12 print("test:1")
13 print("sum0の結果は" + str(sum0()) + "です")
14
15
16def sum0():
17 return 0
18
19
20sum3()
結果
plain
1test:3
2test:2
3test:1
4sum0の結果は0です
5sum1の結果はNoneです
6sum2の結果はNoneです
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。