2016-09-27 14 views
-1

私はこのロジックを使ってプログラムを書いています。簡単なループプログラムを書く

A value is presented of the user. 
Commence a loop 
    Wait for user input 
    If the user enters the displayed value less 13 then 
     Display the value entered by the user and go to top of loop. 
    Otherwise exit the loop 
+0

これで、ユーザーが2363や 'a'から' b 'に答えるプログラムが必要です。これは常に13です。そしてそれが間違った答えであるならば、それはユーザーにそれが正しいまで尋ね続けます。それが正しいとすれば、a-13と更新されますか?だから '2363 -13 = 2350'となり、次のループは' 2350 -13'が何であるかを尋ねます。 – MooingRawr

答えて

0

whileループが2つ必要です。メインプログラムを永遠に保つものと、答えが間違ってしまうとaの値を破棄してリセットするもの。

while True: 
    a = 2363 
    not_wrong = True 

    while not_wrong: 
     their_response = int(raw_input("What is the value of {} - 13?".format(a))) 
     if their_response == (a - 13): 
      a = a -13 
     else: 
      not_wrong = False 
0

あなたがソリューションと掲載に問題が発生したとき、あなたは次のような何かができる方にコーディングであなたの試みを表示することになっているものの:

a = 2363 
b = 13 
while True: 
    try: 
     c = int(input('Subtract {0} from {1}: '.format(b, a)) 
    except ValueError: 
     print('Please enter an integer.') 
     continue 

    if a-b == c: 
     a = a-b 
    else: 
     print('Incorrect. Restarting...') 
     a = 2363 
     # break 

raw_inputの代わりinputを使用

これは、入力を整数に変換しようとする無限ループを作成します(または、正しい入力タイプを宣言する文を印刷します)。a-b == c。その場合は、aの値をこの新しい値a-bに設定します。それ以外の場合は、ループを再開します。無限ループを必要としない場合は、breakコマンドのコメントを解除できます。

0

ロジックが正しいです。while loopinputを調べるとよいでしょう。

x = 10 
while x >= 0: 
    x -= 1 
    print(x) 

これは、それが0に達するまでため、出力は9 8 7 6 5 4 3 2となるxを印刷します:whileループの

while (condition): 
    # will keep doing something here until condition is met 

例:ループは、条件が満たされるまで行き続けながらコンソールの新しい行に1 0。

inputは、ユーザーがコンソールからのものを入力することができます:

x = input("Enter your answer: ") 

これはを促すだろう「あなたの答えを入力してください。」と値のユーザーが変数xに入り、これまで何を格納します。 (容器や箱のような変数の意味)

が一緒にそれをすべて入れて、あなたのような何かを得る:今、このプログラムは、私はあなたが一緒に行く維持したい場合は知らないのでa = 7で停止

a = 2363    #change to what you want to start with 
b = 13    #change to minus from a 

while a-b > 0:  #keeps going until if a-b is a negative number 
    print("%d - %d = ?" %(a, b))      #asks the question 
    user_input = int(input("Enter your answer: ")) #gets a user input and change it from string type to int type so we can compare it 
    if (a-b) == user_input:   #compares the answer to our answer 
     print("Correct answer!") 
     a -= b      #changes a to be new value 
    else: 
     print("Wrong answer") 

print("All done!") 

負の数。 whileループの条件を編集したばかりの場合。私はあなたがそれを管理できると確信しています。

関連する問題