Инструменты пользователя

Инструменты сайта


courses:programming:cw_vars:spring:5

Задания на оценку "Отлично"

Общая часть вариантов с BMP

Программа обязательно должна иметь CLI (опционально дополнительное использование GUI).

Более подробно тут – Требования к курсовым

Программа должна реализовывать всю следующую функциональность по обработке bmp-файла.

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

  • 24 бита на цвет
  • без сжатия
  • файл может не соответствовать формату BMP, т.е. необходимо проверка на BMP формат (дополнительно стоит помнить, что версий у формата несколько). Если файл не соответствует формату BMP или его версии, то программа должна завершиться с соответствующей ошибкой.
  • обратите внимание на выравнивание; мусорные данные, если их необходимо дописать в файл для выравнивания, должны быть нулями.
  • обратите внимание на порядок записи пикселей
  • все поля стандартных BMP заголовков в выходном файле должны иметь те же значения что и во входном (разумеется кроме тех, которые должны быть изменены).

Каждую подзадачу следует вынести в отдельную функцию, функции сгруппировать в несколько файлов (например, функции обработки текста в один, функции ввода/вывода в другой). Сборка должна осуществляться при помощи make и Makefile или другой системы сборки

Общая часть вариантов с PNG

Программа обязательно должна иметь CLI (опционально дополнительное использование GUI).

Более подробно тут – Требования к курсовым

Программа должна реализовывать всю следующую функциональность по обработке bmp-файла. Общие сведения

  • Формат картинки PNG (рекомендуем использовать библиотеку libpng)
  • без сжатия
  • файл может не соответствовать формату PNG, т.е. необходимо проверка на PNG формат. Если файл не соответствует формату PNG, то программа должна завершиться с соответствующей ошибкой.
  • обратите внимание на выравнивание; мусорные данные, если их необходимо дописать в файл для выравнивания, должны быть нулями.
  • все поля стандартных PNG заголовков в выходном файле должны иметь те же значения что и во входном (разумеется кроме тех, которые должны быть изменены).

Каждую подзадачу следует вынести в отдельную функцию, функции сгруппировать в несколько файлов (например, функции обработки текста в один, функции ввода/вывода в другой). Сборка должна осуществляться при помощи make и Makefile или другой системы сборки

Индивидуальные задания

courses/programming/cw_vars/spring/5.txt · Последнее изменение: konstantin.kondratenko