Sem1 task assigned
This commit is contained in:
parent
e5d3895896
commit
b07e133e83
87
Sem1/readme.md
Normal file
87
Sem1/readme.md
Normal file
|
@ -0,0 +1,87 @@
|
|||
# Задание семинара 1
|
||||
|
||||
Необходимо разработать класс Image
|
||||
```cpp
|
||||
#include <stream>
|
||||
|
||||
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
|
||||
|
||||
Релизовать метод для загрузки изображения из файла
|
Loading…
Reference in a new issue