pontz_rwのブログ

プログラミング等の備忘録

ITP1_8_B: Sum of Numbers

数字の和 | プログラミング入門 | Aizu Online Judge

文字列操作に関する問題

1. 入力を文字列として受け取った場合

map()を使用し、受け取った文字列を1文字ずつ整数型に変換し、その合計を出力します。

# coding: utf-8

while True:
    line = input()

    if line == '0':
        break
    else:
        print(sum(map(int, line)))

2. 入力を整数として受け取った場合

入力値を10で割り続け、0になるまでの間、10で割った剰余を加算し、最後にその合計を出力します。

# coding: utf-8

while True:
    n = int(input())

    if n == 0:
        break
    else:
        sum = 0

        while n > 0:
            sum += n % 10
            n //= 10

        print(sum)