43604 (Описание языка Turbo Basic для студентов всех специальностей), страница 2

2016-07-31СтудИзба

Описание файла

Документ из архива "Описание языка Turbo Basic для студентов всех специальностей", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика" в общих файлах.

Онлайн просмотр документа "43604"

Текст 2 страницы из документа "43604"

FOR i=1 to 10

....

NEXT i

FOR i=1 to 10

FOR j=1 to 20

....

NEXT j: NEXT i

- 11 -

или

FOR i=1 to 10

FOR j=1 to 20

....

NEXT j,i

2. DO WHILE  1условие

 1операторы

LOOP

или

WHILE  1условие

 1операторы

WEND

(операторы выполняются 1, 0 пока выполняется условие)

3. DO UNTIL  1условие

 1операторы

LOOP

(операторы выполняются до тех пор, пока не будет выполнено усло-

вие. Как только условие будет выполнено, осуществляется выход из

цикла).

4. DO

 1операторы

LOOP

Выход из цикла в этом случае осуществляется оператором EXIT.

 _Оператор EXIT  . 1( 0выход) используется с SELECT, DEF, FOR, IF,

LOOP, SUB, WHILE. Например,

EXIT FOR осуществляет выход из цикла, организованного опера-

торами FOR/NEXT до его завершения

EXIT IF - выход из любого места IF блока

EXIT LOOP - выход из цикла, заканчивающегося оператором LOOP

или WEND.

Остальные случаи использования EXIT будут рассмотрены вместе с

соответствующими операторами.

 _Операторы выбора . ON/GOTO и ON/GOSUB

ON n GOTO  1метка 0 [,  1метка 0...]

n может принимать значения от 0 до 255. Переход осуществляется на

метку, определяемую значением n. Например, при n = 2 переход осу-

ществляется на вторую метку в списке. Если n = 0 или n больше ко-

личества меток в списке, то выполняется следующий по порядку опе-

- 12 -

ратор.

ON n GOSUB  1метка 0 [, 1 метка 0...]

n принимает значения от 0 до 255. Переход осуществляется к одной

из возможных подпрограмм (см.ниже), определяемых метками в спис-

ке, в зависимости от значения n.

После выполнения подпрограммы возврат осуществляется к опе-

ратору, следующему за ON/GOSUB.

1.8. Подпрограммы, функции и процедуры

 _Подпрограмма . - помеченная последовательность операторов, за-

канчивающаяся оператором RETURN. Выполняется, когда достигнут

GOSUB.

....

GOSUB aa

....

END

aa:

 1операторы

RETURN

Оператор RETURN осуществляет возврат к оператору, непосредственно

следующему за GOSUB.

 _Функция . может быть определена одной строкой (оператор-функ-

ция) или несколькими строками (подпрограмма-функция).

DEF FN  1имя 0 [( 1список параметров 0)] =  1выражение

(это определение оператора-функции) 1.

Здесь список параметров может включать 1  0не более 16 параметров.

DEF FN  1имя 0 [( 1список параметров 0)]

 1описание переменных

 1операторы

[EXIT DEF]

....

[FN  1имя 0 =  1выражение 0]

END DEF

(это определение подпрограммы-функции) 1.

Обращение к функции записывается там, где нужно получить ее зна-

чение. При этом параметры заменяются их фактическими значениями.

Например 1,

DEF FNF (x,y) = x * x + y * y

- 13 -

a = 3 : b = 4

P = FNF (a,b)

или

P = FNF (3,4)

Функция возвращает одно значение, тип которого определяется име-

нем функции. Определение функции может располагаться в любом месте

программы (обычно в начале или в конце). Например,

F = FNa (1.5)

PRINT F

DEF FNa (x)

FNa = x*x

END DEF

END

или

F = FNa (1.5)

PRINT F

END

DEF FNa (x)

FNa = x*x

END DEF

В результате будет напечатано 2.25.

Список параметров оператора-функции может включать только

имена переменных.

 _Процедура . - это последовательность строк программы, располо-

женная между операторами SUB и END SUB и выполняемая при обраще-

нии к ней при помощи оператора CALL.

SUB  1имя 0 [( 1список параметров 0)]

 1описание переменных

 1операторы

[EXIT SUB]

END SUB

Имя может содержать до 31 символа. Список параметров (не более

16) может включать имена переменных и массивов. Для массивов в

скобках указывается размерность. Например, 1 - для одномерного

массива, 2 - для двухмерного и т.д.

В обращении к процедуре за именем фактического массива сле-

дуют пустые скобки. Например,

SUB SUM (x (1), n, S)

S = 0

- 14 -

FOR I=1 to n

S = S + x (I)

NEXT I

END SUB

DIM A (3)

A (1) = 1 : A (2) = 2 : A (3) = 4

CALL SUM ( A (), 3, S)

S = S/3

PRINT S

END

Эта программа вычисляет среднее значение элементов массива A,

процедура SUM суммирует элементы массива.

Основные отличия процедуры от подпрограммы-функции :

1 - процедура не обязана возвращать значение, она не имеет типа;

2 - вызывается оператором CALL, а не из выражения.

Отдельные переменные, используемые в процедуре (или подпрог-

рамме-функции), могут быть объявлены локальными, т.е. действующи-

ми только в данной подпрограмме (оператор LOCAL), общими, т.е.

действующими как в подпрограмме, так и в основной программе (опе-

ратор SHARED) и статическими, т.е. действующими в данной подпрог-

рамме как LOCAL, но сохраняющими полученные значения до следующе-

го обращения (оператор STATIC). По умолчанию в подпрограмме-функ-

ции переменная является SHARED, а в процедуре STATIC.

DEF FNF1

LOCAL i, S

FOR i =1 to 10

S = S + i

NEXT i

FNF1 = S

END DEF

После выхода из подпрограммы-функции переменные i и S теряют свои

значения (при входе в подпрограмму всегда S = 0). Эти же имена

могут использоваться в программе для обозначения других величин.

DEF FNF2

LOCAL i

SHARED S

FOR i = 1 to 10

S = S + i

NEXT i

- 15 -

FNF2 = S

END DEF

В этом случае S сохраняет значение после выхода из подпрограммы и

имеет один и тот же смысл во всех частях программы.

DEF FNF3

LOCAL i

STATIC S

FOR i = 1 to 10

S = S + i

NEXT i

FNF3 = S

END DEF

В этом случае S сохраняет значение после выхода из подпрограммы

до следующего обращения к ней, т.е. после первого обращения зна-

чение функции FNF3 будет 55, после второго - 110 и т.д. (S нельзя

изменять в основной программе).

- 16 -

2. ЦВЕТ И ГРАФИКА

В графическом режиме экран рассматривается как решетка, точ-

ки в узлах которой могут быть включены (белым или другим возмож-

ным цветом) или выключены. Точка идентифицируется координатами x,

y; x - номер позиции по горизонтали (от 0 до 319 или до 639 в за-

висимости от режима), y - номер позиции по вертикали (от 0 до 199

или до 349 в зависимости от режима). Точка с координатами 0,0 на-

ходится в верхнем левом углу экрана.

Графический режим устанавливается (или отменяется)  _операто-

 _ром SCREEN ..

SCREEN i[,j]

i = 0, j = 0 черно-белый текстовый режим

i = 0, j = 1 цветной текстовый режим

i = 1, j = 0 цветная графика при средней разрешающей способнос-

ти (320 позиций по горизонтали, 200 по вертикали)

i = 1, j = 1 черно-белая графика при средней разрешающей спосо-

бности

i = 2 черно-белая графика при высокой разрешающей спосо-

бности (640 позиций по горизонтали, 350 по верти-

кали)

После выполнения оператора SCREEN точка устанавливается в

середину экрана.

 _Оператор COLOR . 2  0устанавливает цвет фона экрана и палитру (из

трех цветов) для окрашивания точек (для текстового режима - еще и

цвет рамки).

Существует две палитры цветов: 0 и 1, следующего состава:

 _Палитра 0 .  _Палитра 1

1 - зеленый 1 - голубой

2 - красный 2 - сиреневый

3 - желтый 3 - белый

Для фона можно выбрать один из 16 цветов (0 - черный, 1 - синий,

2 - зеленый, 3 - бирюзовый, 4 - красный, 5 - лиловый, 6 - корич-

невый, 7 - белый, 8 - серый, 9 - голубой, 10 - ярко-зеленый, 11 -

ярко-бирюзовый, 12 - ярко-красный, 13 - ярко-лиловый, 14 - жел-

тый, 15 - ярко-белый)

Оператор COLOR 2  0имеет вид

COLOR 2  0i, 2  0j[,k]

- 17 -

где i - цвет фона, j - номер палитры, k - цвет рамки.

Например, операторы

SCREEN 1,0

COLOR 9,0

устанавливают цветной графический режим при средней разрешающей

способности; цвет фона - голубой; последующие операторы должны

использовать цвета из 0-й палитры.

В графическом режиме (для получения на экране неподвижных

изображений) могут использоваться следующие операторы:

PSET 2  0(PRESET) - включает (или выключает) точку; LINE 2  0- чер-

тит линию; CIRCLE 2  0- чертит окружность или ее часть; PAINT 2  0- зак-

рашивает указанную часть экрана.

Более сложные операторы для получения движущихся изображений

(DRAW, GET, PUT) рассматриваются в п.4.

Оператор

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 2  0(x, y)

стирают точку (x, y) с экрана.

Оператор LINE 2  0позволяет начертить отрезок прямой, указав его

начало (x1, y1), конец (x2, y2) и цвет k

LINE 2  0[(x1, y1)] 2  0- 2  0(x2, y2), 2  0k

Если начальная точка отсутствует, то линия будет прочерчена, на-

чиная с точки, в которой остановился предыдущий оператор.

С помощью оператора LINE 2  0можно также чертить и закрашивать

прямоугольники

LINE (x1, y1) - (x2, y2), 2  0[k], 2  0B[F]

Точки (x1, y1) и (x2, y2) трактуются при этом как левая нижняя и

- 18 -

правая верхняя вершины прямоугольника. Если цвет k отсутствует,

то прямоугольник будет начерчен 3-м цветом палитры. При наличии

параметра F площадь внутри прямоугольника будет закрашена. Напри-

мер, оператор

LINE (80, 175) - (100, 25), 2, BF закрашивает красным цветом

прямоугольник, расположенный между 80-ой и 100-ой позициями по

горизонтали и 175-ой и 25-ой позициями по вертикали.

 _Оператор CIRCLE . 2  0позволяет строить окружности, дуги, секторы

и эллипсы.

Оператор CIRCLE 2  0(x, 2  0y), 2  0r, k

чертит окружность радиуса r с центром в точке (x, y) цветом k.

После вычерчивания окружности последней использованной точкой

считается ее центр.

Оператор CIRCLE (x, y), r, k, ALPHA1,ALPHA2

вычерчивает дугу, имеющую начало под углом ALPHA1 и конец - под

углом ALPHA2.

Например, оператор (при 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 . 2  0позволяет закрашивать большие области экрана.

Для закрашивания необходимо указать произвольную точку внутри

закрашиваемой области (x, y), цвет, которым нужно закрасить об-

ласть (k1) и цвет границы, которую нельзя пересекать при закраши-

вании (k2), k1 и k2 могут совпадать. Оператор PAINT имеет вид

- 19 -

PAINT (x, y), k1, k2

Например, оператор

PAINT (160, 100), 2, 2

закрасит окружность нарисованную последним оператором CIRCLE,

красным цветом, как и цвет окружности, использованный в операторе

CIRCLE.

- 20 -

3. ФАЙЛЫ. РАБОТА В БЕЙСИКЕ С ФАЙЛАМИ ПОСЛЕДОВАТЕЛЬНОГО

И ПРЯМОГО ДОСТУПА

Если необходимо использовать набор данных или программу мно-

гократно, то необходимо сохранить их на внешнем устройстве памяти

(например, диске или дискете). Для этого создается файл. Файл

должен иметь имя. Имя состоит из двух частей: собственно имя и

расширение

 1имя 0. 1расширение

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее