teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

誤字

2018/03/17 10:00

投稿

退会済みユーザー
answer CHANGED
@@ -10,8 +10,8 @@
10
10
  ....return(keisan)
11
11
 
12
12
  print(bmi(1.74,80))
13
- // print("%.2f" % bmi(1.74,88)) か
13
+ print("%.2f" % bmi(1.74,88)) か
14
- // print("{:.2f}".format(bmi(1.74, 88))にすることで同じ結果が得られます
14
+ print("{:.2f}".format(bmi(1.74, 88))にすることで同じ結果が得られます
15
15
  .2fというのは実数で小数点第2位まで表わせという意味です
16
16
 
17
17
  4)は仰るとおりです
@@ -22,10 +22,10 @@
22
22
  def bmi(height, weight):
23
23
  ....keisan = weight / height**2
24
24
  ....if keisan < 0:
25
- ........return height
25
+ ........return height // 条件に合致しないので無視
26
26
  ....else:
27
- ........return keisan
27
+ ........return keisan // 条件に合致するのでreturnで返される
28
- ....return weight
28
+ ....return weight // 既にreturnが実行されたので無視
29
29
  returnは実行された時点でその他の処理は無視されます
30
30
 
31
31
  6)も1、5と似てますね
@@ -33,7 +33,8 @@
33
33
  print("%.2f" % bmi(1.74,80))
34
34
  としたのだと思います
35
35
 
36
- 7)は再帰処理というやつで関数内でその関数自身を呼び出してるので終わらないのです。
36
+ 7)は再帰処理というやつで関数内でその関数自身を呼び出し終わりの無い処理を続けるので終わらないのです。
37
37
  環境にもよるのかもしれませんが以下のようなエラーメッセージが出ると思います
38
38
  RecursionError: maximum recursion depth exceeded
39
- おんなじこと繰り返し過ぎだよもう無理!と怒られてます
39
+ おんなじこと繰り返し過ぎだよもう無理!と怒られてます
40
+ 確か1度に1,000回くらいまでしか関数は繰り返し処理を使えないと思います