- •Утверждено на заседании кафедры ксу
- •Пример составления программы
- •Блок – схема
- •1.2. Вопросы для контроля:
- •Задания к лабораторной работе №2
- •Контрольная работа № 3 итерационные вычислительные процессы
- •1.1. Теоретическая часть
- •1.2. Задания к контрольной работе № 3
- •Контрольная работа № 4.
- •Блок – схема
- •1.2.Вопросы для контроля
- •Контрольная работа № 5 обработка двумерных массивов (матриц)
- •1.1. Теоретическая часть
- •1.2. Вопросы для контроля
- •1.3. Задание к контрольной работе №5
- •Контрольная работа № 6 использование функций пользователя
- •1.2. Вопросы для контроля:
- •1.3.Задание к контрольной работе № 6
- •Контрольная работа № 7
- •1.1. Теоретическая часть.
- •1.2. Вопросы для контроля:
- •1.3. Задание к контрольной работе № 7
- •Контрольная работа № 8
- •1.1. Теоретическая часть.
- •1.2. Вопросы для контроля
- •1.3.Задание к контрольной работе № 8
- •Контрольная работа №9 создание и обработка графических изображений
- •Вопросы для контроля
- •Задание к контрольной работе №9
- •2. Графическое обозначение блоков в схемах алгоритмов
Контрольная работа №9 создание и обработка графических изображений
Теоретическая часть.
Перевод экрана в графический режим осуществляется с помощью оператора
SCREEN K, где К = 1 – режим средней разрешающей способности; К=2 – режим высокой разрешающей способности.
В графическом режиме можно выводить на экран отдельные точки, линии, различные геометрические фигуры и т.д.
Экран в зависимости от режима SCREEN 1 или SCREEN 2 имеет соответственно
320х200 и 640х200 точек.
Координаты точки экрана для операторов графики можно задавать как в абсолютной форме (x,y) , x – горизонталь, y- вертикаль, так и относительно последней точки, которая устанавливается каждым оператором графики.
STEP (G,V) – определяет смещение относительно последней точки соответственно на величину G по горизонтали и V по вертикали.
В графическом режиме можно выводить и текстовую информацию по 40 символов в строке (SCREEN 1) или по 80 (SCREEN 2).
Для работы в графи чеком режиме используется следующее операторы:
CIRCLE (M,N),A
где M,N – координаты центра эллипса,
A – определяет Х-полуось , если E<=E1 (E2)
Чертится круг радиуса А, если Е=1
А определяет Y – полуось , в противном случае где :
E1=5/6 (SCREEN 1), E2=5/12 (SCREEN 2).
LINE [(M1,N1)]-(M2,N2)
В [ ] скобках приведены необязательные параметры. Этот оператор случит для вывода на экран прямой линии или прямоугольника с заданными параметрами.
Координаты (M1,N1), (M2,N2) определяют в абсолютной или относительной форме точки экрана, через которые проходит отрезок искомой прямой.
По умолчанию для параметра (M1, N1) определяются координатой точки последней ссылки.
PSET (M,N) – выводит на экран дисплея точки с указанными координатами (M,N)
Координаты (M,N) могут задаваться как в абсолютной, так и в относительной форме.
LOCATE M,N - устанавливает курсор в позицию экрана с заданными координатами M,N, где M – номер строки, а N- номер позиции в строке.
DRAW X$ - выводит на экран рисунок определяемый символьным параметром Х$, который содержит команды управления работой с графическим экраном. Команды перемещения начинают движение и вычерчивание линий с конечной точки предыдущего перемещения.
Смысл этих команд следующий :
Uk – перемещение вверх на расстояние k точек.
Dk - перемещение вниз на расстояние k точек.
Lk - перемещение влево на расстояние k точек.
Rk - перемещение вправо на расстояние k точек.
Ek – перемещение по диагонали вверх и вправо на k точек.
Ek - перемещение по диагонали вниз и вправо на k точек.
Gk - перемещение по диагонали вниз и влево на k точек.
Hk - перемещение по диагонали вверх и влево на k точек.
M x,y - абсолютное или относительное перемещение до точки с координатами (x,y).
GET (M1,N1) – (M2,N2) , <имя> - служит помещения копии буфера экрана в заданный параметром <имя> числовой массив. Параметр (M1,N1) – (M2,N2) задает диагональ прямоугольной области экрана, копия содержимого которой помещается в числовой массив с именем <имя>.
PUT (M,N),<имя> - служит для восстановления содержимого экрана, ранее помещенного оператором GET в числовой массив <имя>. Параметры (M,N) и <имя> имеют тот же смысл, что и в операторе GET.
Примеры программ:
1)
10 SCREEN 2: INPUT “ЗАДАТЬ РЕБРО КУБА <133 ”;P: CLS
20 A=0: B=0: C=2*P: D=0: GOSUB 100:B=-P:D=B:GOSUB 100
30 B=0:C=0:GOSUB 100:A=2*P:C=A:GOSUB 100:A=0:B=-P:
40 C=P:D=-3/2*P:GOSUB 100:A=2*P:C=3*P:GOSUB 100
50 B=0:D=-.6*P:GOSUB 100:A=0:B=0:C=P:GOSUB 110
60 A=P:B=D:C=3*P:GOSUB 110:A=3*P:D=-3/2*P
70 GOSUB 100:A=P:B=D:GOSUB 100:C=P:D=-.6*P:GOSUB 100
80 INPUT “ЕЩЕ? (1-ДА,2-НЕТ)”;T: LOCATE 25,50
90 ON T GOTO 10: END:
100 LINE (10+A,199+B)-(10+C,199+D): RETURN
110 LINE (10+A,199+B)-(10+C,199+D),,,&H1111: RETURN
В данном примере запрашивается размер ребра куба и на его основе на экран по средством операторов LINE (строки 9-10)
выводится трехмерный куб с указанным ребром. На экран воспроизводится как видимые (сплошные), так и невидимые (пунктирные) ребра куба.
2)
10 CLS: ‘ Вывод на экран графика функции k=(x/46)^2
20 PRINT “Y=K*(X/46)^2”: LOCATE 2: SCREEN 2: A=100
30 LINE (10,100)-(600,100): LINE (305,0)-(305,199)
40 INPUT “ЗАДАТЬ К”,K: LOCATE 2: FOR L=-295 TO 295
50 PSET (305+L,A-K*(L/46)^2): NEXT: INPUT “ЕЩЕ? (Y/N”),A$
60 IF A$=”Y” OR A$=”y” THEN LOCATE 2:GOTO 3 ELSE END
В данной программе оператор PSET используется совместно с оператором LINE для вывода семейства графиков функции y=k*(x/46)^2 в зависимости от задаваемого значения для коэффициента <k>, лежащего в пределах –750 и 750.