2016-06-18 3 views
1

ちょっとした人たちwhileループを使って、ユーザーが入力した最小の数字を見つける方法を理解できません。私はプログラムを停止するために入力された番号を割り当てなければならないことを知り、入力された最小番号を印刷しなければならない。これはこれまで私が持っているものです:whileループを使用して最小のユーザー入力番号を見つけよう

while(True): 
    A = int(input("Enter a Number (Use -1 to Stop): ")) 
    if(A == -1): 
     break 

ご協力いただきありがとうございます。

答えて

1

あなたが主張する場合は、簡単に、リスト内のすべての値を格納し、minを使用しますが、できないに:

min_val = None 
while True: 
    A = int(input("Enter a Number (Use -1 to Stop): ")) 
    if A == -1: 
     break 
    if not min_val or A < min_val: 
     min_val = A 

それが第1の値ユーザ入力または場合、新しい値があるかどうかをifチェック以前の最小値よりも小さい。
whileが壊れた場合、min_valNone(ユーザーが最初に入力した値が-1の場合)またはユーザーが入力した最小値のいずれかになります。

1

ループの前に番号を初期化してから、新しい番号が小さい場合はその値を更新してください。これは、実行する必要があります。

# initialize minimum 
minimum = int(input("Enter a Number: ")) 
while(True): 
    A = int(input("Enter a Number (Use -1 to Stop): ")) 
    if(A == -1): 
     break 
    if minimum > A: 
     minimum = A 
print(minimum) 
+0

これはうまくいきました、ありがとうございます!あなたはそれをどのように初期化することを知っていましたか? – Zjm4192

+0

新しい値と比較しようとするならば、少なくとも初期値を持つべきです:-) –

1

以下のコードは、あなたのニーズに合うでしょう:

b = -1 
while(True): 
    A = int(input("Enter a Number (Use -1 to Stop): ")) 
    if(A == -1): 
     print b 
     break 
    b = b if A > b else A 

幸運を!

関連する問題