#31 3つの数の最小値を求める
● 問題
入力した3つの数の最小値を求めます。
エラーが発生します。
for i in range(3):
num = input('0より大きい数を入力してください')
if float(num) < min:
min = float(num)
print('最小値は'+str(min)+'です')
● 解答
if float(num) < min で TypeError が発生します。
入力される数は整数とは限らないので,float関数を使って文字列を小数(浮動小数点数)に変換していますが,変数minが初期化されていないため,比較ができません。
変数minの初期化には,次の2つの方法が考えられます。
minの初期値 = ユーザーの最初の入力値 とする方法
num = input('0より大きい数を入力してください')
min = float(num)
for i in range(2):
num = input('0より大きい数を入力してください')
if float(num) < min:
min = float(num)
print('最小値は'+str(min)+'です')
minの初期値 = 無限大 とする方法
min = float('inf')
for i in range(3):
num = input('0より大きい数を入力してください')
if float(num) < min:
min = float(num)
print('最小値は'+str(min)+'です')
#Python #プログラミング
この記事が気に入ったらサポートをしてみませんか?