User Tools

Site Tools


Sidebar






Old

project_shevchenko

Чекер для работы с BMP файлом

Задача

Общая постановка задачи

Обработка файла в формате BMP.

Требуется реализовать программу, которая:

  1. отражает заданную область по вертикали.
  2. делит область на 4 равные части и меняет их местами по диагонали.
  3. если заданная область является квадратом, вписывает в нее окружность белого цвета с толщиной линии 1 пиксель, иначе заливает область черным цветом.
  4. сохраняет результат в новом файле.

(число здесь идентифицирует номер команды)

Параметры

Программа получает параметры из входного потока и должна проверить их корректность. Параметры:

  • input_file
  • x0
  • y0
  • x1
  • y1
  • commands
  • input_file - BMP файл
  • x0 y0 левый верхний угол области (отсчет с точки 0, 0)
  • x1 y1 правый нижний угол области
  • commands - числовой массив неизвестной длины, который хранит в себе последовательность функций обработки входного файла. Массив заканчивается числом 4 - функцией сохранения результата в новом файле.

В случае, если программа получила некорректные параметры, то:

  • операционной системе возвращается ненулевой код возврата (return в main)
  • не создается выходного в файла
  • выводится сообщение об ошибке “Fail with <имя параметра>”.

Общие сведения

  • 24 бита на цвет
  • без сжатия
  • файл всегда соответствует формату (проверять не нужно)
  • обратите внимание на выравнивание; мусорные данные, если их необходимо дописать в файл для выравнивания, должны быть нулями.
  • обратите внимание на порядок записи пикселей
  • все поля стандартных BMP заголовков в выходном файле должны иметь те же значения что и во входном (разумеется кроме тех, которые должны быть изменены).
project_shevchenko.txt · Last modified: 2022/12/10 09:08 (external edit)