AIZU ONLINE JUDGE: Programming Challenge プログラミング入門 トピック3

AOJの プログラミング入門 トピック3にチャレンジしました。

 

トピック3 繰り返し処理

トピック3は繰り返し処理が3_Aから3_Dまであります。

 

トピック3

 

3_A:Print Many Hello World

入力データはなく、1000行のHello Worldを出す問題です。

for文で書いてみました。

for iii in range(1000):
    print("Hello World")

 

 

3_B:Print Test Cases

複数行入力し、それぞれの行にCase??をつけて出力する問題です。

whilr:Trueで無限ループを作り、0が入力されたらbreakし終了、それ以外はprintで表示するようにしました。表示される際にスペースがはいるとクリアできなかったのでスペースを削除するようにsep=''を追加しました。

 

count=1
while True:
    aaa = int(input())
    if aaa == 0 :
        break
    else:
        print("Case ",count,": ",aaa,sep='')
    count+=1

 

3_c:Swapping Two Numbers

同様に無限ループにし、大小比較かソートで解決しました。

2つの入力値が0のとき、breakするように書いて対応しました。

aaa == 0 and bbb==0 と書かずに aaa==0 & bbb==0と書いてしまうと、aaa==0の結果とbbb==0の結果の2つの数字をand((1,1)なら1、それ以外は0)となり、条件文内容が変わってしまうので注意が必要です。

 

3_d:How Many Divisors?

最後は約数を求める問題です。

%演算子を用いて割り切れるかを判定し、その数をカウントすれば解けました。

completed

 

 

 

/* -----codeの行番号----- */