Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Прак. ОП 230115.doc
Скачиваний:
4
Добавлен:
17.11.2019
Размер:
369.66 Кб
Скачать

Контрольные вопросы и задания:

  1. Дайте определение массива.

  2. Каким образом производится описание массивов в С++?

  3. Назовите библиотеку и её функции, отвечающие за произвольное заполнение массивов.

  4. Опишите трёхмерный массив целых чисел.

  5. Сравните организацию общепринятого вывода матриц в Pascal и С++.

Рекомендуемая литература: 1.3, 1.4, 1.5, 1.7, 2.1, 2.2.

Практическое занятие №17

Тема: Рисование в С++ с помощью функций

Цель: закрепление знаний и навыков по использованию графических функций С++ для создания графических примитивов.

Вид работы: фронтальный.

Время выполнения: 1 час.

Теоретический материал:

Графический режим работы отличается от текстового. Левый верхний угол экрана имеет координаты (0; 0), координаты правого нижнего определяются в зависимости от режима работы (стандартно – (640; 480)).

Графические функции и константы языка С++ содержаться в библиотеке graphics.h, которая подключается следующим образом:

#include<graphics.h>

В теле функции main() необходимо инициализировать графику:

d=DETECT;

initgraph(&d, &m, “c:\prog\bc\include”);

где переменные d и m это переменные целого типа. Последняя переменная в процедуре инициализации – это путь к графической библиотеке graphics.h. Необходимо убедиться, что в меню Options->Directories->Include Directories прописан тот же путь.

Задания:

  1. Постройте прямоугольник со сторонами 100 и 150 пикселей, центр которого совмещен с центром экрана. Стороны прямоугольника должны быть параллельны сторонам экрана.

  2. Дано 6 целых чисел, определяющих положение вершин треугольника, расположенного в левой половине экрана. Изобразите на экране этот треугольник, а также треугольник, симметричный данному относительно вертикальной прямой, проходящей через середину экрана.

Ход работы: в тетрадь запишите функции, использованные при решении задач

1. Для решения задачи подключается и инициализируется графическая библиотека graphics.h. Некоторые графические функции:

getmaxx() – определяется для текущего режима максимальное количество пикселей экрана по горизонтали

getmaxy() – определяется для текущего режима максимальное количество пикселей экрана по вертикали

rectangle(x1, y1, x2, y2) – рисует прямоугольник, где x1 и y1 – координаты левого верхнего угла, x2 и y2 – координаты правого нижнего угла

setcolor(n) – устанавливает текущий цвет рисования, где n (цвет) – может указываться как числом, так и английским названием цвета в соответствие с таблицей цветов

line(x1, y1, x2, y2) – линия, где в скобках указаны координаты начала и конца линии.

2. Координаты точек вводятся с клавиатуры. Для симметричного отображения треугольника относительно вертикальной оси проходящей через центр экрана для нового треугольника координаты y остаются теми же, а x-вые координаты преобразуются по формуле:

xn=getmaxx()-xi;

где xn – новые координаты, xi – старые координаты

Контрольные вопросы и задания:

  1. Опишите прототип функции, отвечающей за инициализацию графики в С++.

  2. Как происходит установка текущего цвета рисования?

  3. Какая функция возвращает цвет некоторой точки экрана?

  4. Охарактеризуйте функции, позволяющие выводить на экран текст в графическом режиме.

Рекомендуемая литература: 1.3, 1.4, 1.5, 1.7, 2.1, 2.2.