Рассчитай точную стоимость своей работы и получи промокод на скидку 500 ₽
Найди эксперта для помощи в учебе
Найти эксперта
+2
Создан заказ №1330031
8 сентября 2016

С++

Как заказчик описал требования к работе:
Задание. 1. Создать класс Image, содержащий информацию об изображении. Все используемые изображения должны быть беспалитровые несжатые. Глубина цвета 24 или 32 бит. Структура, в которой хранятся данные изображения может быть RGBQUAD или RGBTRIPLE в зависимости от варианта. 2. Для хранения испол ьзуется либо одномерный, либо двумерный массив в зависимости от варианта. 3. Реализовать считывание данных изображения из файла в виде конструктора и метода класса: Image (char *fileName) и int loadimage(char *fileName). Функции должны выполнять следующие операции: Считывание и хранение заголовка файла внутри функции Считывание и сохранение заголовка изображения в данных объекта. Версии заголовка BITMAPV4HEADER и BITMAPV5HEADER не рассматриваются. Выделение памяти под массив данных изображения, на который указывает Rgbtriple, Последовательное считывание данных изображения (RGBTRIPLE) или (RGBQUAD), в зависимости от BITMAPINFOHEADER.BitCount. Данные RGBTRIPLE (RGBQUAD) приводятся после считывания к структуре, указанной в варианте. В случае ошибки loadimage(char *filename) возвращает 0. 4. Реализовать создание объекта нового изображения конструктором: Image (char Mode, unsigned short BCount, int Width, int Height). Функция выполняет следующее: Заполняет структуру BITMAPINFOHEADER в зависимости от входных параметров Width, Height. Поля вычисляются или задаются стандартным образом. Создаваемое изображение беспалитровое несжатое. Глубина цвета 24 или 32 бит. Выделяет память под массив данных изображения, на который указывает Rgbtriple(или Rgbquad). Записывает данных изображения в зависимости от параметра Mode. 5. Реализовать метод записи изображения в файл void writeimage(char *filename). Функция должна выполнять следующие операции: Открытие файла filename для записи. Вычисление полей и заполнение структуры BITMAPFILEHEADER. Запись структуры в файл. Запись структуры BITMAPINFOHEADER в файл. Запись данных изображения в файл построчно, начиная с нижней строки. В зависимости от BITMAPINFOHEADER.BitCount данные преобразуются к нужному типу. Закрытие файла 6. Реализовать конструктор без параметров Image (), который не выделяет память под массив данных, все параметры изображения = NULL. Никакие операции кроме присваивания или загрузки изображения из файла с этим объектом выполняться не могут. 7. Реализовать конструктор копий Image (const Image &i) и перегрузку оператора “=” Image operator = (Image Inp), выделяющих память отдельно под копию, это необходимо так как при обычном копировании Rgbtriple(или Rgbquad) копии будет ссылаться на ту же область памяти, что и Rgbtriple(или Rgbquad) оригинала. Помимо этого, при перегрузке оператора “=” надо учесть, что присваивание происходит лишь, если левый элемент пуст (это можно определить по BITMAPINFOHEADER.Size=0), в этом случае содержимое объекта копируется полностью. Или изображения имеют один и тот же формат, в этом случае копируются только данные изображения. После того как изображение создано, изменять его параметры (BITMAPINFOHEADER) нельзя. 8. Реализовать деструктор ~Image (). Задание. 1. Реализовать перегрузку оператора Image operator /= (Image InpImage), осуществляющего масштабирование изображений. 2. Добавить в методы возможность считывания, создания и записи палитровых изображений. Дополняются все методы кроме контсруктора без параметров Image (). Глубина цвета выбирается в зависимости от варианта задания. 3. Реализовать перегрузку оператора Image operator / (short Depth), осуществляющуего изменение глубины цвета. Вариант задания можно выбрать любой (Файл прилагается)
подробнее
Заказчик
заплатил
500 ₽
Заказчик не использовал рассрочку
Гарантия сервиса
Автор24
20 дней
Заказчик воспользовался гарантией для внесения правок на основе комментариев преподавателя
11 сентября 2016
Заказ завершен, заказчик получил финальный файл с работой
5
Заказ выполнил
user1004163
5
скачать
С++.docx
2019-03-03 09:15
Последний отзыв студента о бирже Автор24
Общая оценка
4
Положительно
Хороший исполнитель, взялся за работу от которой 5 других отказались. Правда работа завершена не в срок и в пояснительной записке пришлось самому подкорректировать некоторые детали, поэтому 4/5.

Хочешь такую же работу?

Оставляя свои контактные данные и нажимая «Создать задание», я соглашаюсь пройти процедуру регистрации на Платформе, принимаю условия Пользовательского соглашения и Политики конфиденциальности в целях заключения соглашения.
Хочешь написать работу самостоятельно?
Используй нейросеть
Мы создали собственный искусственный интеллект,
чтобы помочь тебе с учебой за пару минут 👇
Использовать нейросеть
Тебя также могут заинтересовать
Запрограммировать генератор (mvp) в готовую программу (C++, QT, VS 2015)
Дипломная работа
Программирование
Стоимость:
4000 ₽
Написать код для выполнения поставленной задачи (Visual Studio, C#)
Решение задач
Программирование
Стоимость:
150 ₽
Разработка программного продукта "Учет автомобильных запчастей"
Дипломная работа
Программирование
Стоимость:
4000 ₽
Разработка простого многопоточного приложения в ОС Windows
Задача по программированию
Программирование
Системный анализ.
Курсовая работа
Программирование
Стоимость:
700 ₽
Модели замкнутых систем массового обслуживания
Курсовая работа
Программирование
Стоимость:
700 ₽
Эквивалентные преобразования контекстно-свободных грамматик
Лабораторная работа
Программирование
Стоимость:
300 ₽
Основные подходы к разработке программ в C
Курсовая работа
Программирование
Стоимость:
700 ₽
Функции в языке. Создание меню
Курсовая работа
Программирование
Стоимость:
700 ₽
антикафе « White Rabbit »
Курсовая работа
Программирование
Стоимость:
700 ₽
Создание игры пятнашки на Lazarus
Курсовая работа
Программирование
Стоимость:
700 ₽
Реализовать на Prolog Лексический анализатор
Курсовая работа
Программирование
Стоимость:
700 ₽
Дискретизация и квантование статических данных
Курсовая работа
Программирование
Стоимость:
700 ₽
Читай полезные статьи в нашем
Встроенные функции в VBA
Практически весь программный код модулей VBA содержится в процедурах двух типов Sub (подпрограммы) и Function (функции). Основная задача процедуры-функции Function - это вычисление некоторого значения и возвращение его в точку вызова процедуры-функции.
Синтаксис процедуры-функции Function:
Function Имя_Функции(аргументы As < mun >) As < mun >
< блок операторов >
Имя_Функции = Возвращаемое_Значение
End...
подробнее
Операторы циклов
В VBA существуют два основных типа циклов – циклы со счетчиком (параметрические) и циклы с условием (итерационные).
Циклы со счетчиком используют в тех случаях, когда необходимо выполнить некоторые действия определенное число раз.
Циклы с условием применяются тогда, когда некоторые действия в программе должны повторяться до тех пор, пока выполняется определенное условие.
Для организации циклов в VBA,...
подробнее
Списки в HTML
Информация, представленная списками в языке HTML, строится с помощью специального набора тегов. Списки являются одной из самых популярных форм представления данных, как в электронном виде, так и в печатном. Со списками человек встречается практически ежедневно и повсеместно (список покупок в магазине, учащихся в кабинете и т.д.).
В языке HTML используются основные типы списков:
При организации раз...
подробнее
Оформление стилей веб-страниц
Стилистическое оформление всех страниц Web-сайта является одним из важных условий создания хорошего сайта. Казалось бы, что сделать это достаточно просто, стоит только установить одинаковые значения для всех визуальных свойств объектов. Но, если Web-страницы, входящие в проект, имеют достаточно большой объем, этот процесс может отнять много времени. Для автоматизации данного процесса можно использ...
подробнее
Встроенные функции в VBA
Практически весь программный код модулей VBA содержится в процедурах двух типов Sub (подпрограммы) и Function (функции). Основная задача процедуры-функции Function - это вычисление некоторого значения и возвращение его в точку вызова процедуры-функции.
Синтаксис процедуры-функции Function:
Function Имя_Функции(аргументы As < mun >) As < mun >
< блок операторов >
Имя_Функции = Возвращаемое_Значение
End...
подробнее
Операторы циклов
В VBA существуют два основных типа циклов – циклы со счетчиком (параметрические) и циклы с условием (итерационные).
Циклы со счетчиком используют в тех случаях, когда необходимо выполнить некоторые действия определенное число раз.
Циклы с условием применяются тогда, когда некоторые действия в программе должны повторяться до тех пор, пока выполняется определенное условие.
Для организации циклов в VBA,...
подробнее
Списки в HTML
Информация, представленная списками в языке HTML, строится с помощью специального набора тегов. Списки являются одной из самых популярных форм представления данных, как в электронном виде, так и в печатном. Со списками человек встречается практически ежедневно и повсеместно (список покупок в магазине, учащихся в кабинете и т.д.).
В языке HTML используются основные типы списков:
При организации раз...
подробнее
Оформление стилей веб-страниц
Стилистическое оформление всех страниц Web-сайта является одним из важных условий создания хорошего сайта. Казалось бы, что сделать это достаточно просто, стоит только установить одинаковые значения для всех визуальных свойств объектов. Но, если Web-страницы, входящие в проект, имеют достаточно большой объем, этот процесс может отнять много времени. Для автоматизации данного процесса можно использ...
подробнее
Теперь вам доступен полный отрывок из работы
Также на e-mail вы получите информацию о подробном расчете стоимости аналогичной работы