Skip to content

Create StepTracker.java #1

@SwShow

Description

@SwShow

Это класс с основной логикой приложения — в нём хранится информация о пройденных шагах, реализована логика по сохранению и изменению количества шагов, а так же рассчитывается статистика.
В памяти приложения хранится следующая информация:
Название месяца и данные о шагах пройденных в каждый день этого месяца. Для удобства считаем, что в месяце всегда ровно 30 дней.
Целевое количество шагов. При старте приложения устанавливается равным 10000.
В классе должна быть реализована следующая функциональность:
Сохранение количества шагов за день. Пользователь должен указать название месяца, номер дня и количество шагов, пройденных в этот день. Количество шагов должно быть неотрицательным. Для ускорения прототипирования на данном этапе считается, что в месяце ровно 30 дней. Если за какой-то день статистика не сохранялась, то считаем количество шагов в этот день равным 0.
Подсчёт и вывод статистики за указанный пользователем месяц. В статистике должны быть следующие данные:
Количество пройденных шагов по дням в следующем формате:
1 день: 3000, 2 день: 2000, ..., 30 день: 10000
Общее количество шагов за месяц;
Максимальное пройденное количество шагов в месяце;
Среднее количество шагов;
Пройденная дистанция (в км);
Количество сожжённых килокалорий;
Лучшая серия: максимальное количество подряд идущих дней, в течение которых количество шагов за день было равно или выше целевого.
Если текущий день — первый в месяце (количество дней, за которое есть данные = 0), то вывод статистики должен работать корректно: все показатели должны быть равны нулю.
Изменение целевого количества шагов. Данные вводятся пользователем. Введённое значение не должно быть отрицательным.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions