Тестовое задание НПО Колибри
  • C++ 95.1%
  • QMake 4.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-14 06:58:07 +03:00
.gitignore feat: UI layout 2026-09-13 22:13:11 +03:00
colibri.pro feat: UI layout 2026-09-13 22:13:11 +03:00
colibri_ru_RU.ts feat: UI layout 2026-09-13 22:13:11 +03:00
main.cpp feat: UI layout 2026-09-13 22:13:11 +03:00
mainwindow.cpp fix: Fix progress reset even if timer not stopped 2026-09-14 06:32:08 +03:00
mainwindow.h feat: Cancel operation button 2026-09-14 05:45:39 +03:00
mainwindow.ui feat: Cancel operation button 2026-09-14 05:45:39 +03:00
README.md chore: README.md 2026-09-14 06:58:07 +03:00

Формулировка задания

Реализовать тестовую программу, которая модифицирует входные файлы бинарной операцией с заданным значением. Порядок работы программы:

После запуска настраивается пользователем: а) маска входных файлов, например .txt, testFile.bin b) настройка необходимости удалять входные файлы или нет c) путь для сохранения результирующих файлов d) путь для поиска файлов для обработки e) действия при повторении имени выходного файла: перезапись или модификация, например, счетчик к имени файла f) работа по таймеру или разовый запуск g) периодичность опроса наличия входного файла (таймер) h) значение 8 байт для бинарной операции модификации файла в формате hex например 1234567890ABCDEF

Функциональность: модифицирует входные файлы, операция XOR с 8-байтной переменной, введенной с формы (Пункт 1,h)

Программа должна позволять обрабатывать файлы большого объёма(10GB) без "замирания" интерфейса! Плюсом будет статус выполнения и прогресс выполнения обработки! Программа должна иметь возможность приостановить обработку файла в любой момент времени и возобновить её с того же места. Закрытие программы должно производится корректно даже если в момент закрытие идёт обработка файлов.

Среда разработки QT Creator, язык программирования С++, операционная система Windows, компилятор MinGW. Результат работы должен содержать .pro или CMakeLists.txt файл обязательно.

О сборке

Для сборки релиза использовалось окружение MXE. Работоспособность проверена на ОС Windows 11 и Linux 7.2.3-arch1-3.