Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

For, to, step, next - команды цикла



Некоторые фрагменты программы могут повторяться многократно в цикле до выполнения определенного условия. Цикл организуется оператором цикла:

for: i=N1 to n2 step n3

где n1,n2,n3 ‑ параметры цикла, определяющие начальное, конечное значения и шаг приращения, соответственно, переменной цикла i. Значения этих параметров не могут изменяться в программе внутри цикла, но вне цикла могут модифицироваться.

Если не указана величина шага, то он принимается равным 1. Цикл должен быть завершен командой:

next i

где i ‑ переменная цикла.

Команды цикла не используются в операционной среде.

Пример:

>100 dim x(50)

>110 for k=0 to100 step 2

>120 x(k/2)=k*k

>130 next k

Данная программа заполняет массив x квадратами четных чисел, т.е. числами 0,4,16…10000.

4.8. goto ‑ команда перехода

Программа в camac‑basic выполняется последовательно согласно номерам строк. Однако часто требуется изменить порядок выполнения команд. Для этого служит команда:

goto n

где n ‑ номер строки, с которой программа должна продолжаться.

Пример:

>100 input а

>101 goto 200

>102 for i=1 то а

>200 а=а/2

>220 goto 102

4.9. if, then ‑ команды условных переходов

Команда условного перехода позволяет перейти к выполнению одной из двух строк программы в зависимости от заданного условия:

if с then n

где

с ‑ условие (выбирается из отношений, описанных в 7.2.);

n ‑ номер строки программы, на которую нужно передать управление при выполнении заданного условия.

При невыполнении условия сохраняется естественный порядок выполнения программы. Данные команды не могут быть использованы в операционной среде.

Пример:

>100 input a

>110 if a=1 then 1000

>120 if a<=3 then 1100

>130 goto 100

- - - - - - - - - - - - - - - - - - - - - - - - -

>1000 …

>1100 …

Программа после команд if будет продолжаться со строки 1000 при а=1 и со строки 1100 при а=2 или а=3. При а>3 будет выполняться команда, следующая за строкой 120.

4.10. gosub, return ‑ организация подпрограмм

В случае, когда некоторые последовательности команд часто повторяются в программе, эффективно объявлять их подпрограммами.

Команда:

gosub n

где

n ‑ номер строки программы, позволяет передавать управление подпрограмме, начинающейся с указанной строки.

Команда:

return

позволяет вернуться к очередной строке за gosub главной программы.

Пример:

>100 gosub 2000

>110 …

- - - - - - - - - - - - - - - - - - - - - - - - -

>200 gosub 2000

- - - - - - - - - - - - - - - - - - - - - - - - -

>2000 …

>2100 return

4.11. print ‑ вывод информации

Для вывода на экран дисплея информации используется команда:

print p

где p ‑ список параметров, разделенных запятыми, в число которых может входить:

‑ последовательность знаков (текст), заключенная в апострофах;

‑ значение, представленное числом либо именем переменной;

‑ функция табуляции;

‑ функция выводе знака по коду;

‑ функция форматирования чисел;

Значение числа записывается в обычном виде, если для него хватает 8 позиций. В противном случае оно записывается в формате Е.

Функция tab(n) печатает n пробелов.

Функция chr(n) выводит знак в соответствии с ascii кодом n.

Функция форматирования чисел %…% дает возможность управления распечаткой чисел:

%E% ‑ числа будут распечатаны в формате Е;

%Z% ‑ числа будут распечатаны со всеми нулями;

%N% ‑ будет распечатано n цифр после запятой;

%% ‑ возврат к стандартной распечатке;

параметры e, z, n могут быть использованы в любой последовательности.

пример:

>100 а=10

>120 print tab(5),”a=”,a,tab(20),%3E%,4*a

после выполнения 120 строки будет напечатано:

а=10 4.000e1

4.12. lprint ‑ вывод на печать

Инструкция lprint выполняется аналогично инструкции print, но информация выводится на устройство, определенное как устройство печати.

4.13. push ‑ занесение данных в стек

Инструкция позволяет заносить 16-разрядные данные во внутренний стек системы. Требует задания одного параметра:

push V

где v ‑ константа, переменная или выражение, опред. значение данного, заносимого в стек.

примеры:

>10 push 13

>20 push i+2*7

4.14. out ‑ выдача данных в порт микро-ЭВМ

Инструкция позволяет выдавать 16-разрядные данные в любой из внешних портов микрокомпьютера. Требует задания двух параметров:

out n[v]

где

n ‑ константа, переменная или выражение определяющее номер порта;

v ‑ список констант, выражений или переменных, определяющих выдаваемые данные.

Пример:

>5 n=6

>10 out n[v]

>20 out 3[x+1]

>30 out 206[111,j]

4.15. poke ‑ занесение данных по абсолютному адресу

Инструкция позволяет записывать 8-разрядные данные в любые ячейки озу. Требует задания двух параметров:

poke n[v]

где

n ‑ константа, переменная или выражение, определяющее абсолютный адрес ячейки памяти;

v ‑ константа, переменная или выражение, определяющее записываемые данные.

Пример:

>5 v=r-12

>10 poke o[10]

>20 poke a[v]

4.16. clear ‑ сброс переменных

Команда:

clear

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

4.17. end ‑ конец программы

При встрече с инструкцией:

end

программа перестает выполняться и интерпретатор готов выполнить следующую инструкцию операционной среды.

4.18. stop ‑ прерывание программы

Команда:

stop

вызывает прерывание программы на строке, в которой находится эта команда, и переход в операционную среду camac‑basic.

Команда stop часто используется при отладке программ. в случае неправильной работы программы можно между двумя строками вставить строку с командой stop. После прерывания выполнения программы можно подать команду print и вывести на экран интересующую нас информацию.

Пример:

>110 а=а*b/с+1

>115 stop

>120 if a>=d then 1000

- - - - - - - - - - - - - - - - - - - - - - - - -

>I000 end

>run /выполнение программы/

stop in line 115 /печать на экране/

>print a

4.19. rem ‑ ввод комментария

для ввода комментария в программу используется команда:

rem t

где t - любой текст комментария

Команда rem при выполнении программы пропускается интерпретатором и не оказывает влияния на ход выполнения программы.

Пример:

>10 input a, b

>20 rem ввод параметров а и в





Дата публикования: 2014-12-25; Прочитано: 197 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...