YURU_DB

OracleDB / AOJ(python)

ITP1_3_B: Print Test Cases (python)

問題

テストケースの出力

オンラインジャッジでは、提出されたプログラムが複数の入力データそれぞれに対して正しい出力を行っているかを判定するために、
1つの入力データファイルに複数のデータセットが含まれているものがあります。
この問題は、そのようなデータセットを処理するための練習問題です。
1つの整数 x を読み込み、それをそのまま出力するプログラムを作成して下さい。
ただし、この問題は以下に示すようにいくつかのデータセットが与えられることに注意して下さい。

Input

入力は複数のデータセットから構成されています。各データセットは1つの整数 x を含む1行から構成されています。
x が 0 のとき入力の終わりを示し、このデータセットに対する出力を行ってはいけません。

Output

各データセットごとに、以下の形式で x を出力して下さい:

Case i: x
ここで、i は1から始まるデータセットの番号を示します。
Caseと番号 iの間に1つの空白を入れて下さい。
また、:(コロン)と整数 x の間に1つの空白を入れて下さい。サンプル入出力を参考にして下さい。

Constraints

1 ≤ x ≤ 10,000
データセットの数は 10,000 を超えない。

回答

num = 1
while True:
    x = int(input())
    if x == 0: break
    print ("Case {0}: {1}".format(num,x))
    num += 1

説明

 ・問題から「ある条件下において、処理を続ける」事が必要になるのでWhile文を使う。
 ・caseXXXを出力するための変数numを初期値1で定義。
 ・while文の中身:
  入力値をint型に変換しつつxに格納。
   ※もしx(入力値)が0ならwhileループを抜ける。
  num(caseの番号)と、x(入力値)を表示。
  numに1足す。

雑感

自分だけでは解けなくて、AOJの回答投稿から見ました。
まだまだpython力低い。。