2017-01-13 10 views
-1

私はちょうど学校のプログラミングを始めました。この割り当てでは数字を入力してから0まで数えてから数学演算を選びその数学演算。私のプログラムはそれが負の数を使用していることを認識していません

この問題は、負の数を入力すると、「小さすぎます - もう一度お試しください。」という正しいメッセージが表示されます。正の数を入力すると、元の負の数がプログラムに割り当てられます。ここで

は私noobieコードです:はい、あなたはwhileループ不足している

num1 = int(input("\nEnter a number 1 or greater:\t")) 
counting = num1 + 1 


def count(): 
     print("Counting from 0 to", num1,":") 
     for i in range(0,counting): 
       print(i, end = ' ') 
     math_op() 


def reset(): 
     num1 = int(input("Too small - Try again: ")) 
     if num1 <= 0: 
       reset() 
     else: 
       count() 

def math_op(): 

     ops = input("\n\nChoose math operation (+, -, *)") 

     if ops in ('+'): 
       print("Table for",num1,"using +:") 
       for i in range(1,11): 
         print(num1 ,'+', i ,'=', num1 + i)     


     if ops in ('-'): 
       print("Table for",num1,"using -:") 
       for i in range(1,11): 
         print(num1 ,'-', i ,'=', num1 - i)    

     if ops in ('*'): 
       print("Table for",num1,"using *:") 
       for i in range(1,11): 
         print(num1 ,'*', i ,'=', num1 * i)     

if num1 <= 0: 
     reset() 
else: 
     count() 
+0

なぜ新しい番号をお尋ねしますか?あなたのコードはループしていません。 – IanAuld

+0

ここでwhileループを使用しますか? – Mitch

答えて

0

num1 = -1 
while num1 < 1: 
    num1 = int(input("\nEnter a number 1 or greater:\t")) 

# remaining code after here 
+0

ありがとうございます!私はそれがこれらの行に沿ったものであることを知っていた。 – Mitch

+0

あなたの質問に答えた場合は、回答を受け入れたものとしてマークすることを検討してください。そして、あなたは大歓迎です。 – nlsdfnbch

0

をあなたは補正が正のときにカウントする回数を設定したことがない:

def reset(): 
    num1 = int(input("Too small - Try again: ")) 
    if num1 <= 0: 
     reset() 
    else: 
     counting = num1 + 1 
     count() 
関連する問題