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