← Маршрут ML-инженерии

Урок · 2 мин чтения · упражнения и самопроверка

Рабочее окружение

После урока: объяснить редактор и выполнить упражнение «Запустить программу из терминала с вводом из файла», обосновав выбранный подход..

Перед началом

Папка, исходник и терминал

Создайте отдельную папку курса. В ней храните main.py или main.cpp, примеры входа и README с командами. Терминал должен быть открыт в этой папке. Если файл не найден, сначала проверьте текущий каталог и имя, а не переустанавливайте инструменты.

Python запускается командой python main.py; в Windows также работает py -3 main.py. Для первых уроков без внешних библиотек системного интерпретатора достаточно. Для ML-лаборатории создайте окружение python -m venv .venv и установите закреплённые зависимости из её README. На Windows активация обычно .\.venv\Scripts\Activate.ps1, на Linux/macOS — source .venv/bin/activate. Можно обойтись без активации, указав путь к интерпретатору окружения: это исключает путаницу при установке пакетов через python -m pip.

C++ собирайте командой g++ -std=c++20 -Wall -Wextra main.cpp -o main. В PowerShell запускайте ./main.exe, в Linux/macOS — ./main. Исполняемый файл, созданный для одной операционной системы, обычно нельзя просто перенести в другую.

Воспроизводимый вход

Сохраните данные в input.txt. В Linux/macOS: python main.py < input.txt. В PowerShell: Get-Content input.txt | python main.py. Для C++ замените команду запуска на свой исполняемый файл. Если программа ждёт ещё данные, проверьте, хватает ли значений согласно формату.

Окружение .venv и бинарные результаты сборки не добавляйте в Git. Исходники и примеры должны позволять другому человеку повторить проверку без вашего компьютера.

Сделайте самостоятельно

Подготовьте input.txt с двумя числами, запустите программу суммы и запишите команду в README.

Ответ и критерии проверки

Файл с содержимым 2 7 должен дать 9. Проверьте команду из новой сессии терминала в указанной папке. README должен содержать версию языка, команду сборки, запуска и ожидаемый ответ.

Проверьте понимание

1. Где хранить команды запуска проекта?
2. Нужно ли пересобирать C++ после изменения входа?