Загрузка данных


Практическая работа №3. Массивы.

Задания оцениваются по следущим критериям: 

1. Соответствие решения условию задания (правильно реализованы все операции и
выполнен обозначенный ввод, вывод).
2. Выбрана правильная технология реализации под каждый тип задачи.
3. Используется только библиотека <iostream>.
4. Оформление кода (использовано минимальное количество строк, отсутствуют
лишние переменные, правильно выполнены отступы, использован множественный
ввод-вывод и др.).
5. Оформление пользовательской части.

Задание 1.
Разработать программу для управления списком задач. Изначально список пустой. Каждая задача
идентифицируется уникальным числовым ID, хранить описание задач не нужно. Пользователь
может добавлять новые задачи, удалять существующие задачи и просматривать весь список.
Задание 2.
Разработать программу для анализа статистики посещения сайта. Временной период (количество
дней) определяется пользователем. Количество посетителей за каждый день определяется
пользователем. Программа должна подсчитать и вывести:
1. Общее количество посещений за весь период.
2. Среднее количество посещений в день.
3. Максимальное и минимальное число посещений за весь период (с указанием дня).
4. Общий % низкой посещаемости сайта (низкая – это посещаемость ниже среднего).
Задание 3.
Реализуйте шифр Цезаря для следующего преобразования текста: каждая буква исходного текста
заменяется буквой, стоящей на x символов впереди неё. Будем полагать что алфавит
зацикленный, т.е. после буквы z идет буква a.
Шифр Цезаря — это вид шифра подстановки, в котором каждый символ в открытом тексте
заменяется символом, находящимся на некотором постоянном числе позиций левее или правее
него в алфавите. Пользователь вводит строку и сдвиг.
Например, вот, как будет выглядеть шифр Цезаря со сдвигом на 3:
 A заменяется на D
 B заменяется на E
 и так далее
 Z заменяется на C

То есть если бы на вход нам дали строку “aaa” и сдвиг равный 3, то результат шифрования был бы
равен “ddd”, потому что d — третья по счёту буква после a; если бы на вход нам дали строку “zzz”
и сдвиг равный 1, то результат будет равен “aaa”, потому что алфавит зациклен, то есть
после z следующая буква a.
Задание 4.
Программа фиксирует скорость водителя каждый час в течении суток. Порог разрешенной
скорости зависит от местонахождения водителя (вводится пользователем). Необходимо написать
программу, выводящую:
1. Среднюю скорость водителя за сутки.
2. Максимальный непрерывный интервал (в часах), когда скорость не превышала
введенный порог.
3. Максимальный непрерывный интервал превышения порога.
4. Общее количество часов движения автомобиля.
Задание 5.
Разработать программу для анализа продаж. Считаем, что в каждом месяце 22 рабочих дня.
Программа должна выводить аналитику продаж за текущий месяц:
1. Средняя сумма продаж.
2. Количество и номера дней с максимальными продажами (в диапазоне больше
100 000).
3. Количество и номера дней с минимальными продажами (в диапазоне меньше 10 000)
4. Количество периодов уменьшения продаж больше 3х дней подряд (когда продажи за
каждый следующий день меньше предыдущего), вывести с количеством дней в
периоде.

Программа должна составить план продаж на основе сравнения текущего месяца с аналогичным
месяцем прошлого года («год к году») – данных о продажах за каждый день двух месяцев
(например, март 2025 года и март 2024 года). Программа должна определить планируемые
продажи на следующий месяц по следующему правилу:
1. Если продажи текущего месяца больше или равны продажам в аналогичный месяц
прошлого года, планируемый объём увеличивается на 10% от продаж текущего месяца
(округлить до целого).
2. Если продажи ниже, планируемый объём равен среднему арифметическому двух
значений (за текущий и прошлый год), округленному до целого.