# Задание семинара 1 Необходимо разработать класс Image ```cpp #include using namespace std; class Image { int mx; int my; int data[100000]; public: Image (int tmx, int tmy) { // Должен инициализировать изображение 0 for(int i=0;i<10000;i++) data[i] = 0; } int getMx() { return mx; } int getMy() { } void show() { // Должен выдавать на экран изображение при помощи printf или std::cout // TODO реализовать } int get(int x,int y) { // TODO реализовать логику return 0; } void set(int x,int y,int color) { // TODO реализовать логику } }; Image a(10,10); int main() { return 0; } ``` ## Задание 1 Создать переменную типа Image и убедиться путем вставки отладочной печати, что конструктор вызывается. ## Задание 2. ### Вариант 1: Реализовать методы get и set в предположение, что двумерное изображение помещается в одномерный массив data по строкам (перва строка, второая строка и т.д.) ### Вариант 2 Реализовать метод copy, получающий копирующий другое изображение и копирующий его в данное, а также метод compare, которые сравнивает текущее изображение с другим ## Задание 3. Реализовать метод show и убедиться, при создании переменной дял изображение 10 на 10 на экран выводится правильрное изображение ## Задание 4. ### Вариант 1 Добавить в класс метод для рисования вертикальных линий. Убедиться, что они работают путем выдачи изображения на экран при помощи метода show. ### Вариант 2 Добавить в класс метод для горизонтальных линий. Убедиться, что они работают путем выдачи изображения на экран при помощи метода show. ## Задание 5 ### Вариант 1 Релизовать метод для сохранения изображения в файл ### Вариант 2 Релизовать метод для загрузки изображения из файла