2017年2月2日 星期四

Python3:從random玩九九乘法練習(二)

如何讓九九乘法遊戲可以繼續呢~~
程式在進行設計之前,必須要先將需求能夠清楚的整理出來
再轉化為適當的程式邏輯語言去執行 ,例如本次需求:
1.亂數出題,答對可以繼續挑戰,答錯就停止遊戲!
2.系統會記錄答對的次數。最後呈現出本次挑戰答對的題數。
這就是間單的系統需求規劃~~
import random
test_num = 0
retry = True

while retry:
    random_num1 = random.randrange(1, 9)
    random_num2 = random.randrange(1, 9)
    num_ans = random_num1 * random_num2
    input_num = input('請輸入' + str(random_num1) + '*' + str(random_num2) + '的答案是多少?:')
    try:
        input_num = int(input_num)
    except:
        print("請輸入正確的正整數!!")
        print("您共答對了" + str(test_num) + "題")
        exit()
    if num_ans > input_num:
        print("答錯囉~答案數字還要再大點喔!")
        print("Ans:" + str(num_ans))
        print("您共答對了" + str(test_num) + "題")
        exit()
    elif num_ans < input_num:
        print("答錯囉~答案數字比較小喔!")
        print("Ans:" + str(num_ans))
        print("您共答對了" + str(test_num) + "題")
        exit()
    elif num_ans == input_num:
        print("太厲害了~答對囉!繼續跳戰下一題~~~!")
        test_num += 1
    else:
        print("不會吧!居然判斷不出來")
        print("您共答對了" + str(test_num) + "題")
        exit()

可以看出,這次跟之前單純的乘法遊戲的差別在哪裡嗎?
 這些些微的差異,為何會讓程式有不同的運用結果呢?
想想看囉!
1.「retry = True」中的True一定要大寫開頭喔!這樣才是邏輯上的「真」、「假」變數的指定喔
2.「while」則可依據條件成立與否決定回圈是否繼續。以本次範例而言,也就是當
retry變數為「真」時,迴圈(遊戲)就會繼續下去。

沒有留言:

張貼留言