Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KNIGA.DOC
Скачиваний:
37
Добавлен:
09.02.2015
Размер:
162.82 Кб
Скачать

§ 10.5 Решение задач.

Задача 1.

Нарисовать четыре точки, которые лежат на одной горизонтальной прямой на расстоянии 20 пикселей друг от друга. Точка последней ссылки имеет координату (15, 20).

Решение: ПРИМЕЧАНИЯ.

SCREEN 9: COLOR 5,15 :REM графич. режим, фон 5, цвет 15

CLS :REM очистка экрана

PSET(15,20) :REM рисует точку с координатами (15,20)

PSET STEP(20,0) :REM рисует точку со смещением PSET STEP(20,0) :REM относительно последней на 20

PSET STEP(20,0) :REM пикселей по оси ОХ.

END

Результат: 15 35 55 75

20 . . . .

Задача 2.

Нарисовать три окружности, центры которых лежат на одной горизонтальной прямой на расстоянии 30 пикселей друг от друга. Радиусы окружностей равны 20, центр первой окружности совпадает с центром экрана.

Решение.

SCREEN 9 120 150 180

CLS

CIRCLE STEP(0, 0), 20, 15 100

CIRCLE STEP(30, 0), 20, 15

CIRCLE STEP(30, 0), 20, 15

END

Задача 2.

Построить четырехугольник с вершинами (10,15), (30,25), (30,5) и (20,0).

Решение:

SCREEN 9:CLS

LINE (10,15)-(30,25), 5

LINE — (30, 5),5

LINE — (25,0), 5

LINE — (10,15), 5

END

РЕЗУЛЬТАТ: 5 10 20 25 30

5

15

25

Задача 3.

Напишите программу рисования произвольной картинки.

Полезный совет: Прежде, чем начать писать программу, нарисуйте картинку на листке в клетку и расставьте нужные координаты. Вы сразу увидите, какие числа будут в качестве операндов в Вашей программе.

Например,

20 40 50 80

10

30

50

70

Решение:

SCREEN 9: COLOR 10, 0: CLS

LINE (20,30) - (80,70), 10, B :REM СТЕНА

LINE (20,30) - (50,10), 10 :REM КРЫША

LINE - (80,30), 10 :REM КРЫША

CIRCLE (50, 50), 10, 10 :REM ОКНО

PAINT(50, 50), 2, 10 :REM ЗАКРАШЕНО ЗЕЛЕНЫМ ЦВЕТОМ

END

Рассмотрим решение этой задачи в общем виде. Обозначим высоту домика через H, длину через L, высота крыши будет равна L/2. Пусть левый верхний угол стены домика имеет координату (x,y), тогда координаты фигур, составляющих домик будут выглядеть следующим образом:

X X+L/2 X+L

Y-L/2

Y

Y+H/2

Y+H

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

Программа примет вид:

CLS

INPUT “X=“;X

INPUT “Y=“;Y

INPUT “H=“;H

INPUT “L=“;L

SCREEN 9: COLOR 10, 0: CLS

LINE (X,Y) - (X+L,Y), 10, B :REM СТЕНА

LINE (X,Y) - (X+L/2,Y-L/2), 10 :REM КРЫША

LINE - (X+L,Y), 10 :REM КРЫША

CIRCLE (X+L/2, Y+H/2), 10, 10 :REM ОКНО

PAINT(X+L/2, Y+H/2), 2, 10 :REM ЗАКРАШЕНО END : REM ЗЕЛЕНЫМ ЦВЕТОМ

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]