Задание Numerics
📝 Основное задание
На вход подаются n случайных целых чисел. Из этих чисел необходимо сформировать одномерный массив или коллекцию.
С выбранным способом набора чисел без использования Linq выполнить:
- (0.5 баллов) Поиск минимального значения.
- (0.5 баллов) Поиск максимального значения.
- (0.5 баллов) Сортировку чисел по возрастанию.
- (0.5 баллов) Сортировку чисел по убыванию.
- (0.5 баллов) Нахождение индекса первого вхождения числа. Число вводится с консоли.
- (0.5 баллов) Нахождение индекса последнего вхождения числа. Число вводится с консоли.
- (0.5 баллов) Нахождение индексов всех вхождений числа. Число вводится с консоли.
- (0.5 баллов) Нахождение всех чисел, кратных m.
(1 балл) То же самое повторить с Linq. Засечь время выполнения алгоритма без и с Linq. Сравнить разницу во времени. Взять, например, секунды.
Все результаты выводить в консоль. Числа n и m вводятся с консоли. Для формирования чисел можно использовать класс Random с диапазоном от -1000 до 1000.
⭐ Задания со звездочкой
- (0.25 баллов + 0.25 баллов) Разработать процесс удаления дубликатов из набора без использования Linq и отдельно с его использованием.
- (0.25 баллов) Реализовать операции над множествами: проекция, объединение, пересечение, разность, соединение. (0.25 баллов) Так же без Linq и с Linq по отдельности.
- (1.5 балла) Разработать меню для выбора определённой операции. Реализовать возможность возврата к меню после выполнения математических операций. Формат меню может быть любой, например, числовой или псевдографический (как в TotalCommander в DOS или FarManager).
- (2.5 балла) Разработать модульные тесты для проверки правильности выполнения алгоритмов.
⭐ Бонусное задание
(до 5 баллов) Придумать самостоятельно, как можно модифицировать программу. Можно не реализовывать кодом, но тогда надо будет рассказать на собеседовании, как можно реализовать ту или иную модификацию.
Оценка
Оценка для текущего задания — 10-бальная система.
Формула оценки:
$$ \textup{Оценка} = min(\textup{полученные баллы}, 10) + min(\textup{полученные бонусные баллы}, 5) $$
Полученные баллы это сумма баллов за основные задания и за задания со звездочкой.
Полученные бонусные баллы это сумма бонусных баллов.
<aside> ⚠️ Минимальный порог — 4 из 10.
</aside>