牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

Java 入門の九九のプログラムを Python でやってみた

元ネタ

「第3章:変数と型」の九九のプログラム

kuku.py

#!/usr/bin/env python
# *-# -*- coding: utf-8 -*-

import random

class Kuku:
        
    MAX_QUESTION = 10
    
    def main(self):
        goodAnswers = 0
        print "これから九九の問題を%d出題します。" % MAX_QUESTION

        for i in range(0, MAX_QUESTION + 1):
            ok = self.showQuestion(i + 1)
            if ok:
                goodAnswers += 1

        rate = goodAnswers * 100.0 / MAX_QUESTION
        print
        print "問題は%d問ありました。" % MAX_QUESTION
        print "正しく答えられたのは%d問で、" % goodAnswers
        print "間違えてしまったのは%d問です。" % (MAX_QUESTION - goodAnswers)
        print "正解率は%d%です。" % rate
        print
        print "おつかれさま。"

    def showQuestion(self,questno):
        x = random.randint(1, 10)
        y = random.randint(1, 10)
        try:
            print " [第%d門]%d X %d = ?" % (questno, x ,y)
            line = raw_input()
            result = int(line)
            if x * y == result:
                print "はい、正しいです。"
                return True
            else:
                print "残念、まちがいです。"
                return False
        except:
            print "入力が正しくありません。"
        return False

if __name__ == '__main__':
    k = Kuku()
    k.main()


いちおうクラス使ってみた