![]() |
Работа с блоком данныхDate: 2015-10-07; view: 407. В случае работы с неким набором числовых или символьных констант их можно считать блоком данных. Для хранения блока данных используют оператор DATA. DATA [список констант] Символьные константы заключаются в кавычки. Например: DATA 5,25,17.4,306,”A”,”g12” DATA 6,”basic”, “h2”,24.67,”PROLOG” В программе может быть использовано произвольное количество операторов DATA. Кавычки можно опускать если в символьной константе нет разделителей Для присвоения значений констант из блока данных (для чтения) используют оператор READ. READ [список переменных] В списке через запятую указывают имена переменных, которым присваиваются значения констант. Например: READ a,f,e,h,d$,j$ READ v,d$,w$,z,m$ Во время чтения данные выбираются по порядку из оператора DATA, стоящего первым в программе. Один оператор READ может читать несколько операторов DATA и наоборот – несколько операторов READ могут читать один оператор DATA. Повторное чтение невозможно до появления оператора RESTORE. RESTORE [метка] Метка указывает на оператор DATA с которого будет начато повторное чтение; без метки с первого оператора. Например: DATA 1,2,3 12 DATA 4,”5” ------------------ READ E,R,T,T,D$ ------------------ RESTORE 12 READ L,F$ Чтение символьных данных в числовую переменную, и наоборот, приведет к ошибке {Type mismatch} –ошибка в типе данных. Если переменных больше чем данных, то это приводит к ошибке {Out of DATA}- нехватка данных.
2.9 Организация графического экрана. Операторы графики. Современные диалекты языка имеют широкий набор операторов для получения графических изображений. Изображение получается путем окрашивания в различные цвета точек экрана. В графическом режиме экран рассматривается как сетка, точки в узлах которой могут быть «включены» (белым или другим возможным цветом) или «выключены». Для определения конкретной точки с экраном связана система координат. Точка идентифицируется координатами x, y; x - номер позиции по горизонтали (от 0 до 319 или до 639 в зависимости от режима), y - номер позиции по вертикали (от 0 до 199 или до 349 в зависимости от режима). Точка с координатами 0,0 находится в верхнем левом углу экрана.
У
(349,0) (349,939)
Графический режим устанавливается (или отменяется) оператором SCREEN. SCREEN i После выполнения оператора SCREEN точка устанавливается в середину экрана. Если вы работаете в текстовом режиме (i=0), его объявлять необязательно, он устанавливается по умолчанию. Остальные режимы являются графическими, и их надо устанавливать. Мы рассмотрим несколько графических видеорежима: 0 – текстовый режим, 25х80 знаков. 7 – с разрешением 320х200, 4 цвета, 25х40 знаков 9 – с разрешением 640х350, 16 цветов, 25х80 знаков
Оператор COLORустанавливает цвет фона экрана и цвет для окрашивания точек изображения. Для фона и изображения можно выбрать один из 16 цветов: 0 - черный, 1 - синий, 2 - зеленый, 3 - бирюзовый, 4 - красный, 5 - лиловый, 6 - коричневый, 7 - белый, 8 - серый, 9 - голубой, 10 - ярко-зеленый, 11 - ярко-бирюзовый, 12 - ярко-красный, 13 - ярко-лиловый, 14 - желтый, 15 - ярко-белый. Оператор COLORимеет вид COLORi,j где i - цвет фона, j – цвет изображения. Например, операторы SCREEN 9 COLOR 9,0 устанавливают цветной графический режим; цвет фона - голубой; последующие операторы будут использовать черный цвет для построения изображений (если сами не указывают его). По команде CLS экран очищается текущим цветом фона В графическом режиме (для получения на экране неподвижных изображений) могут использоваться следующие операторы: PSET (PRESET) - включает (или выключает) точку; LINE- чертит линию или прямоугольник; CIRCLE- чертит окружность или ее часть; PAINT- закрашивает указанную часть экрана. Более сложные операторы для получения движущихся изображений (DRAW, GET, PUT) рассматриваются в главе 3. Оператор PSET (x, y)включает точку с координатами x,y. Оператор PSET STEP (x, y)включает точку, отстоящую на x позиций по горизонтали и на y позиций по вертикали от текущей точки. Например, если в предыдущем положении точка имеет координаты (60, 75), то оператор PSET (10, 20) определяет точку с координатами (10, 20), а оператор PSET STEP (10, 20) определяет точку с координатами (70, 95). Операторы PSET (x, y), 0 или PRESET(x, y) стирают точку (x, y) с экрана. Оператор LINEпозволяет начертить отрезок прямой, указав его начало (x1, y1), конец (x2, y2) и цвет k LINE[(x1, y1)]-(x2, y2),k Если начальная точка отсутствует, то линия будет прочерчена, начиная с точки, в которой остановился предыдущий оператор. С помощью оператора LINEможно также чертить и закрашивать прямоугольники LINE (x1, y1) - (x2, y2),[k],B[F] Точки (x1, y1) и (x2, y2) трактуются при этом как левая нижняя и правая верхняя вершины прямоугольника. Если цвет k отсутствует, то прямоугольник будет начерчен 3-м цветом палитры. При наличии параметра F площадь внутри прямоугольника будет закрашена. Например, оператор LINE (80, 175) - (100, 25), 2, BF закрашивает красным цветом прямоугольник, расположенный между 80-ой и 100-ой позициями по горизонтали и 175-ой и 25-ой позициями по вертикали. Оператор CIRCLEпозволяет строить окружности, дуги, секторы и эллипсы. Оператор CIRCLE(x,y),r, k чертит окружность радиуса r с центром в точке (x, y) цветом k. После вычерчивания окружности последней использованной точкой считается ее центр. Оператор CIRCLE (x, y), r, k, a1,a2 вычерчивает дугу, имеющую начало под углом a1 и конец - под углом a2. Например, оператор (при PI = 3.1416) CIRCLE (160, 100), 80, 2, PI/2, PI строит дугу от PI/2 до PI окружности радиуса 80 с центром в точке (160, 100) вторым цветом палитры. Если использовать знак " - " перед начальной и конечной точками дуги, то будет нарисован сектор, т.е. конечные точки дуги будут соединены с центром. Например, CIRCLE (160, 100), 80, 2, - PI/2, - PI Можно изобразить сплюснутую (или наоборот вытянутую) окружность, добавив в оператор CIRCLE еще один параметр – коэффициент сжатия. Если значение этого параметра меньше 1, то окружность будет сплюснута по вертикали, если больше 1, то - по горизонтали. Например: CIRCLE (160, 100), 80, 2, , , 3/4 Все параметры оператора CIRCLE задаются в определенном порядке и разделяются запятыми. Обязательными являются только параметры, указывающие положение центра и радиус окружности. Остальные параметры необязательны, однако, запятые должны быть оставлены, если пропущены параметры в середине списка. Оператор PAINTпозволяет закрашивать большие области экрана. Для закрашивания необходимо указать произвольную точку внутри закрашиваемой области (x, y), цвет, которым нужно закрасить область (k1) и цвет границы, которую нельзя пересекать при закрашивании (k2), k1 и k2 могут совпадать. Оператор PAINT имеет вид PAINT (x, y), k1, k2 Например, оператор PAINT (160, 100), 2, 2 закрасит окружность нарисованную последним оператором CIRCLE, красным цветом, как и цвет окружности, использованный в операторе CIRCLE. Задачи для самостоятельной работы Построить изображения приведенные на рисунках: 1) 2)
|