2014年10月5日日曜日

開発環境

Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)の1章(Cを始める: Cの世界に飛び込む)、エクササイズ(p.35)をpythonで考えてみる。

エクササイズ(p.35)

コード(BBEdit, Emacs)

sample35.py

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

card_names_values = dict(K=10, Q=10, J=10, A=11)
card_name = input('カード名を入力してください:\n')
count = 0

while card_name != 'X':
    if card_name == 'X':
        break
    elif card_name[0] in card_names_values:
        val = card_names_values[card_name[0]]
    else:
        val = int(card_name)
        if not 1 <= val <= 10:
            print('{0}は無効なカード値です。'.format(val))

    if 3 <= val <= 6:
        count += 1
    elif val == 10:
        count -= 1
    
    print('現在のカウント:{0}'.format(count))
    card_name = input('カード名を入力してください:\n')

入出力結果(Terminal, IPython)

$ ./sample35.py
カード名を入力してください:
K
現在のカウント:-1
カード名を入力してください:
Q
現在のカウント:-2
カード名を入力してください:
J
現在のカウント:-3
カード名を入力してください:
A
現在のカウント:-3
カード名を入力してください:
7
現在のカウント:-3
カード名を入力してください:
6
現在のカウント:-2
カード名を入力してください:
3
現在のカウント:-1
カード名を入力してください:
2
現在のカウント:-1
カード名を入力してください:
10
現在のカウント:-2
カード名を入力してください:
11
11は無効なカード値です。
現在のカウント:-2
カード名を入力してください:
24
24は無効なカード値です。
現在のカウント:-2
カード名を入力してください:
10
現在のカウント:-3
カード名を入力してください:
X
$

0 コメント:

コメントを投稿