10801. Сумма цифр

 

Дано натуральное число n. Найдите сумму цифр числа n.

 

Вход. Первая строка содержит количество тестов t (t < 100). Каждая из следующих t строк содержит число n (1 ≤ n ≤ 1050), сумму цифр которого следует найти.

 

Выход. Выведите t строк, каждая из которых содержит сумму цифр соответствующего числа.

 

Пример входа

Пример выхода

3

123

43

78903

6

7

27

 

 

РЕШЕНИЕ

элементарные задачи

 

Анализ алгоритма

Поскольку входные числа могут быть очень большими (до 50 знаков), будем читать их как строки. Пусть sстрока, содержащая число. Например, если s = “123”, то цифра, стоящая на i-ой позиции числа, будет равна s[i] – ‘0’. Суммируем цифры числа на всех позициях.

 

Реализация алгоритма

Читаем количество тестов n.

 

cin >> n;

 

Последовательно обрабатываем n тестов.

 

for (i = 0; i < n; i++)

{

 

Входное число читаем в строку s.

 

  cin >> s;

 

Сумму цифр числа вычисляем в переменной sum.

 

  sum = 0;

  for (j = 0; j < s.size(); j++)

    sum = sum + s[j] - '0';

 

Выводим ответ.

 

  cout << sum << endl;

}

 

Python реализация

Читаем количество тестов n.

 

tests = int(input())

 

Последовательно обрабатываем n тестов.

 

for _ in range(tests):

 

Читаем число как строку. Преобразовываем входную строку в список цифр.

 

  lst = list(map(int,input()))

 

Сумма чисел в списке lst равна сумме цифр текущего числа. Выводим ответ.

 

  print(sum(lst))