Графические программы на Бейсике
Отличительной чертой особенностью современных ЭВМ является возможность предоставлять людям информацию в наглядной графической форме. В языке Бейсик для таких ЭВМ включены операторы ввода на экран ЭВМ как символьной, так и графической информации.
Язык Бейсик включает средства вывода на экран таких элементов графической информации, как точки, отрезки прямых линий, дуги, окружности, рамки, а также операторы для вывода надписей и раскраски точек и фигур.
Рассмотрение графических средств Бейсика можно начать с программы вывода на экран рисунка первомайского праздника. Приведем описание алгоритма и соответствующую картинку:
АЛГ «ПЕРВОМАЙСКИЙ ПРАЗДНИК» НАЧ КРАСНЫЙ ФЛАГ НАДПИСЬ МИР, ТРУД МАЙ СИНИЙ ШАРИК КОН | МИР, ТРУД, МАЙ |
Детальный алгоритм: АЛГ «ПЕРВОМАЙСКИЙ ПРАЗДНИК» НАЧ ЛИНИЯ (80, 40) - (80, 160), КРАСНАЯ РАМКА (80, 50) - (180, 120), КРАСНАЯ РАСКРАСКА (130, 90), КРАСНАЯ НАДПИСЬ (10, 2) МИР, ТРУД, МАЙ ОКРУЖНОСТЬ (210, 60), 30, СИНЯЯ РАСКРАСКА (210, 60), СИНЯЯ ЛИНИЯ (210, 90) - (210, 120), СИНЯЯ КОН | Программа на Бейсике: 10 ¢ первомайский праздник 20 С1=4: С2=1 ¢ графика 30 LINE (60, 40) - (60, 160), C1 40 LINE (60, 50) - (160, 120), C1, B 50 PAINT (130, 90), C1 60 LOCATE 10, 2 70 PRINT «мир, труд, май» 80 CIRCLE (210, 50), 30, C2 90 PAINT (210, 50), C2 100 LINE (210, 80) - (210, 120), C2 110 END |
В 20-й строке записаны два присваивания: С1 = 4 и С2 = 1. Эти два присваивания фиксируют коды цветов: С1 - для красного, а С2 - для синего.
Ввод этой программы в ЭВМ лучше всего проводить по частям. В начале следует ввести и апробировать операторы 10, 20, 30, проверив начало программы, затем операторы 40 и 50, осуществляющие вывод рамки и раскраску флага. Далее необходимо подправить в программе координаты рамки, переместив флаг в центр экрана. После этого ввести и подкорректировать операторы 60 и 70, обеспечивающие вывод надписи. И, наконец, ввести операторы 80, 90 и 100, которые выводят и раскрашивают изображение шарика.
Вывод элементов изображения на экран ЭВМ производится в Бейсике следующими операторами:
COLOR C1, C2 | · цвет фона = с2, букв = с1 |
PSET (X, Y), C LINE (X1,Y1) - (X2,Y2), C LINE (X1,Y1) - (X2, Y2), C, B CIRCLE (X, Y), R, C CIRCLE (X, Y), R, C, α1, α2 PAINT (X, Y), C CLS | · точка (х, у), с, где х, у - координаты точки на экране, а с - ее цвет. · линия (x1, y1) - (x2, y2), с Здесь (х1, у1) и (х2, у2) - координаты концов отрезка. · рамка ( х1, у1) - (х2, у2) - координаты концов диагонали рамки. Стороны рамки параллельны сторонам экрана. Символ В в этом варианте оператора LINE означает, что на экран будет вводиться рамка, а не линия. · окружность (х, у), r, c Здесь (х, у) - координаты центра окружности, а r - ее радиус. · дуга (x, y), r, c, α1, α2. Здесь a1, a2 - углы дуги окружности, задаваемые в радианах. · раскраска (х, у), с. Здесь (х, у) - координаты точки, из которой начнется раскраска. Напомним, что раскрашиваться будет та фигура, контур которой имеет тот же самый цвет, что и указанный в операторе PAINT · очистка |
В учебных ЭВМ возможен вывод на экран в графическом режиме нескольких градаций цветов. Номера этих цветов зависят от типа ЭВМ в диалектах языка Бейсик.
Вывод надписей в отечественных компьютерах проводится с помощью двух операторов: оператора указания места вывода - LOCATE Px, Py и оператора вывода сообщений PRINT, в котором указывается, что должно выводиться.
LOCATE Px, Py PRINT «фраза» | n место надписи (Px, Py) n вывод «фраза» |
В персональном компьютере для вывода графических изображений, прежде всего, требуется задать режим вывода на экран графической информации. Для этого используется оператор SCREEN 2 или SCREEN 12.
Вопросы, упражнения и задания для самопроверки
ВОПРОСЫ:
Каковы размеры экрана при выводе графической информации на ваших машинах?
Какие цвета есть на вашем компьютере и как они кодируются?
Как вывести на экран окружность, если такого оператора нет в языке программирования?
УПРАЖНЕНИЯ:
Составьте описание, детальный алгоритм и программу на Бейсике для получения изображений;
а) домика; б) автомобиля; в) трактора; г) книги
д) дворца; е) цветка; ж) рыбки; з) птички.
ЗАДАНИЯ:
Составьте план ввода и испытаний для своей программы.
Введите свою программу в ЭВМ в соответствии с установленным планом.