Задание № 3312

Студент

Бергман Арсений

Задача

Happy number

Состояние

Завершено

Баллов

3

Дедлайн
19 апреля 2021
Назначено

26.04.2021, 15:13

Завершено

24.05.2021, 15:17

Реализовать алгоритм, который определяет, является ли число счастливым

Входные данные

Текстовый файл:

<число_1>
<число_2>
<число_3>
...

Пример:

1
2
19

Файл может содержать пустые строки. Их необходимо игнорировать.

Постановка задачи

Счастливое число - это число, определяемое следующим процессом. Возьмем любое положительное число и будем заменяем это число суммой квадратов его цифр. Будем продолжать этот процесс, пока число не станет равно 1 (дальнейший ход алгоритма уже нечего не изменит) или будет бесконечно крутиться в таком цикле. Числа, для которых такой процесс сойдется к 1 - счастливые.

Например, число 19 - счастливое:

82 + 22 = 68

62 + 82 = 100

12 + 02 + 02 = 1

Передачу имени файла реализовать через аргументы командной строки.

Выходные данные

Текстовый файл

<число> - <yes|true|false>
...

Пример

1 - true
2 - false
19 - true

Тестирование

Для всех разработанных модулей должны быть созданы наборы unit тестов. Функций ввода/вывода нужно тестировать с помощью std::stringstream.

Действия