paiza Cランクレベルアップメニュー「数字の文字列操作(時刻2) Python3編」

# coding: utf-8
# 自分の得意な言語で
# Let's チャレンジ!!

# get data

hoge = input()
# hoge = "13:31" #for debug

h = int(hoge[:2])
m = int(hoge[3:])
# print(h,m)


# processing

m += 30
# print(m)

if m>59:
    h += 1
    m -= 60
    
# print(h)
# print(m)

if len(str(h))<2:
    h = "0"+str(h)

if len(str(m))<2:
    m = "0"+str(m)
    
print(str(h)+":"+str(m))
 

一回目の提出でまちがえて8点でした。
30を足したとき、分が59よりも大きい時は、
分から「60を」引かなくちゃでした。
最初30を引いてました。

あともうひとつ、
m += 30
と記述するつもりで、
m =+ 30
と記述してしまって、しかもなぜかエラーが出なかったです。

途中に流れのわかるプリント文をたくさん入れてやっと突き止めました。

paizaさんの解答例をみてみたら、何か考えのプロセスが全然違っていて、
うーーーん、良く分からないがすごいなー、という感じでした。きれいなコードを書くのはかくも難しい。

https://paiza.jp/works/mondai/c_rank_level_up_problems/c_rank_string_step6

0

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です