Глава 3 - Изучаем операторы DIM, FOR...NEXT, STEP, GOTO, IF...THEN, COLOR

Глава 3 - Изучаем операторы DIM, FOR...NEXT, STEP, GOTO, IF...THEN, COLOR

ТРЕТЬЯ Глава. Привет! В этой главе, мы изучим следующие команды:

 DIM, FOR...NEXT, STEP, GOTO, IF...THEN, COLOR

 Сейчас, вы знаете: Относительно типов переменной, операторы PRINT, INPUT, и  LET.
Это базовые детали из среды БЕЙСИКА, но теперь мы должны двигаться в комплексную область БЕЙСИКА.

 Переменные используются в каждой программе, независимо от того какая программа это.
Именно поэтому переменные настолько важны в БЕЙСИКЕ. Однако, когда много строк,
сотни переменных, названия которых трудно запомнить, вводят МАССИВЫ.
 
 Массивы - большое поле в памяти компьютера. Вы можете помещать различные вещи в поля массивов,
но их организовывают в одно большое поле. Чтобы создавать массив, используют команду DIM:

 DIM ArrayName$ (number)

 ArrayName - название массива, сопровождаемого типом переменной($,!,# и т.д.)
номер в круглых скобках - количество "полей" в массиве. Чтобы использовать массив, назначают значения массива, используя команду LET. Например:

 DIM Day$(2)
 LET Day$(1) = "Воскресенье
 LET Day$(2) = "Понедельник

 И так далее. Чтобы ПЕЧАТАТЬ одну из этих переменных в массиве,
пишите точно  так же как и для печати переменной (т.е. с помощью команды PRINT):

 PRINT "Сегодня: "; Day$(1); "."

 И, соответственно, чтобы получить значение от клавиатуры в массив, используете команду INPUT:

 INPUT "Как зовут первого игрока?"; players$(1)
 INPUT "Как зовут второго игрока?"; players$(2)

 Вы можете использовать элемент массива также, как переменную. При использовании массивов, вы можете управлять сотнями названий, значений: Строки, долларовые количества, и намного больше. Теперь вы умеете использовать массивы. Вы, я думаю, не смогли бы, скажем,
напечатать 100 различных значений массива, названного "players$".
Это очевидно было неэкономично, иметь 100 различных команд печати.

 Поэтому, нам нужно изучить ЦИКЛЫ. Цикл - набор команд, которые повторены несколько раз,
до какого либо условия, или бесконечно. Первый цикл, который мы изучим команда FOR...NEXT.
Это повторяет команды между операторами FOR и NEXT столько раз, сколько указанно.
Синтаксис прост:

 FOR i = 1 TO 100
 PRINT i
 NEXT i

 Программа печатала бы числа от одного до сотни. Вместо переменной "i", можно давать любое имя, например, "bob" или "sam" или "linda", или "z".
Вы можете так же брать более низкие или высокие значения переменной - например:

 FOR i = 6 TO 371
 PRINT "Магический номер может быть:"; i
 NEXT i

 Другой способ применения FOR...NEXT - способ приращения цикла - использованием команды STEP.
Если вы опускаете команду STEP (как в обычном FOR...NEXT цикле),
"i" увеличивается каждый раз после выполнения цикла. С использованием команды STEP,
Вы можете изменять её на любой номеру какой пожелаете. Например:

 FOR i = 100 TO 300 STEP 2
 PRINT "Магический номер может быть:"; i
 NEXT i

 Это бы вывело все четные числа от 100 до 300.
Вы могли бы также заставить переменную "i" отчисляться назад, как в этом примере:

 FOR i = 300 TO 100 STEP -2
 PRINT "цифра - теперь:"; i
 NEXT i

 FOR...NEXT циклы могут использоваться везде. В следующей главе,
мы изучим два других видах цикла, которые продолжают выполнятся до некоторого условия.
В этой части мы изучим оператор GOTO.
Если Вы не знаете оператор GOTO, то заверяю вас, оператор чрезвычайно прост.
GOTO - мощная команда, которая позволяет вам переходить в разные части программы по номерам строки. Но для этого вы должны "маркировать" строки, к которым вы хотите перейти.
Например:

 topofprogram: CLS
 PRINT "Это бесконечный цикл"
 GOTO topofprogram

 Или, так:

 1 CLS
 PRINT "Привет мир!"
 GOTO 1

 GOTO - очень простой, но все же мощный оператор.
Но использование оператора не обязательно в вашей программе, его можно заменить другим.
GOTO становится очень полезным, когда используется вместе с операторами IF...THEN.
Вы можете использовать GOTO, чтобы создать некоторый тип меню, подобно этому:

 PRINT "Мое Меню"
 PRINT "Нажмите 1, чтобы очистить экран, и 2, чтобы вывести "Привет"!"
 INPUT "Что вы выбираете"; choice
 IF choice = 1 THEN GOTO clrscr
 IF choice = 2 THEN GOTO hello
 clrscr: CLS
 PRINT "Готово."
 hello: PRINT "Привет, Привет, Привет!"
 END

 Вы можете использовать GOTO после THEN, чтобы перейти к другой части программы программы.
Или, Вы можете заменять "=" любым математическим символом
(подобно знаку больше ">" или меньше "<").
Есть пара примеров в одной программе:

 PRINT "Пример Программы #1"
 PRINT "Номер, о котором я думаю стоит в промежутке от 1 и 10."
 PRINT "Вы получаете 3 возможности."
 INPUT "Первый выбор"; number
 IF number = 3 THEN GOTO gotit
 PRINT "Простите!"
 INPUT "Второй выбор"; number
 IF number = 3 THEN GOTO gotit
 PRINT "Нет!"
 INPUT "Последний выбор"; number
 IF number = 3 THEN GOTO gotit
 PRINT "Простите! The number was 3!"
 END
 gotit: PRINT "Вы выиграли! Хорошая работа!"

 Основной элемент в этой программе - IF...THEN.

 Последняя вещь в этой главе – изучение изменения цвета текста и других элементов.
Цвет текста на экране позволяет менять команда COLOR (Включая Цвет фона).
Вот пример использования этого оператора:

 COLOR 13
 PRINT "Сиреневый!"
 COLOR 7
 PRINT "Серый!"

 Число, после оператора COLOR - один из этих номеров цвета:

 00 - Сажа
 08 - Тёмно - серый
 01 – Темно - синий
 09 – Светло - синий
 02 – Тёмно – зеленый
 10 - Светло - зеленый
 03 – Тёмно - голубой
 11 – Светло - голубой
 04 – Темно - красный
 12 - Светло - красный
 05 – Темно - пурпурный
 13 - Сиреневый
 06 - Цитрус
 14 - Жёлтый
 07 - Серый
 15 – Ярко - белый

 Это заканчивает наше обсуждение оператора COLOR и нашей главы.
В этой главе узнали много нового.

Сайт создан в системе uCoz