Проверка комплекта снаряжения — проект на Rust для тех, кто хочет превратить связанные записи в понятную проверку оборудования. Вы сопоставите план поездки с записями об отсканированных предметах, различая тип снаряжения, идентификатор отдельного предмета и его состояние. Два отсканированных фонаря не покрывают потребность в двух исправных фонарях, если один повреждён.
Две пошаговые лабораторные работы ведут от идентификации предметов к объяснению недостачи и излишков. В одном задании вы примените те же правила к другой поездке. Каждая лабораторная работа содержит собственный подготовленный проект и входные данные, не зависящие от файлов или процессов предыдущей среды.
Чему вы научитесь
После завершения курса вы сможете:
- связывать идентификаторы типов с потребностями плана, а идентификаторы предметов — с отдельными объектами, даже если разные типы имеют одинаковое название;
- читать TSV по указанным путям без изменения источников, учитывать одинаковые повторные сканирования один раз и отклонять противоречивые записи одного предмета;
- учитывать для покрытия потребности только предметы
goodи рассчитывать недостачу и излишек по типам, не назначая произвольно отдельные предметы лишними; - объяснять каждый тип через требуемое количество, число исправных предметов, недостачу и излишек, показывать полные множества ID исправных и повреждённых предметов и относить каждый предмет к предусмотренным или не предусмотренным планом;
- считать запланированный тип без сканирований и нулевую потребность допустимыми входными случаями, сохраняя в результате повреждённое и не предусмотренное планом снаряжение.
Для кого этот курс
Курс предназначен для изучающих Rust, которые готовы объединить коллекции, типизированные записи и восстанавливаемые ошибки в небольшой программе обработки файлов.
Предварительные требования: Базовая работа с терминалом и знание структур Rust, enum, HashMap, Result, файловых операций и простой итерации.
Учебная среда: LabEx предоставляет Terminal Linux в браузере, подготовленный проект Rust и синтетические файлы plan.tsv и scans.tsv. Вы работаете с ограниченным форматом, разделённым табуляцией, а не с универсальным CSV-ридером. Названия элементов терминала и вывод программы остаются на английском языке.
Часто задаваемые вопросы
Нужен ли сканер или настоящее снаряжение?
Нет. В курсе используются синтетические записи сканирования. Выводы описывают эти записи и не подтверждают состояние физических предметов.
Дополнительные или повреждённые предметы — это ошибки ввода?
Нет. Они должны оставаться видимыми. Повреждённые предметы не покрывают потребность, а исправные предметы, не предусмотренные планом, учитываются в излишке. Противоречивые сведения о типе или состоянии одного предмета являются ошибкой; нельзя молча выбирать последнюю строку.
Сколько времени нужно выделить?
Автор оценивает длительность в 115–155 минут с учётом чтения и обычных ошибок. Оценка ещё не проверена при прохождении курса новичками.

