Выбрать главу

  В предыдущей главе, мы говорили относительно циклов DO...LOOP, которые позволяют повторять действие некоторое количество раз. Окончание цикла при уловии:

  Все, что вы должны сделать - написать, DO WHILE... или UNTIL..[какое-либо условие]. В переводе с английского это бы звучало так: ДЕЛАЙТЕ какое - либо ДЕЙТСТИЕ ДО ТОГО КАК ПРОИЗОЙДЁТ [какое-либо условие]

Обязательна команда LOOP, чтобы закончить цикл. Есть очень простой пример

из того, как использовать этот цикл:

  DO UNTIL a = 10

  try = try + 1

  PRINT "Попробуйте номер"; try

  PRINT

  PRINT "Наберите секретный номер!"

  INPUT "Введите"; a

  LOOP

  Это бы значило что цикл продолжался до набора числа 10. Эта команда очень простая, но бесконечно полезная. Отличие этого цикла от команды INPUT - не нужно нажимать клавишу "ENTER" после ввода числа. Сейчас программисты стремятся придерживаться этого в своих программах, а именно, в местах где написано "нажмите любую клавишу".

Функция INKEY$ - требует немедленного нажатия на любую клавишу… Вы можете "вставлять" эти команды в вашу программу.

  DO WHILE INKEY$ = ""

  PRINT "Нажмите любую клавишу. Для окончания цикла..."

  LOOP

  И это бы значило, то что, цикл бы не прекратился пока бы вы не нажали любую клавишу.

  Функцию можно использовать в:

  Меню "вызывающей клавиши" INPUT(Как горючую клавишу). Однако, это  требует конструкцию, подобную IF...THEN.

  Изучим, теперь, новый набор команд - SELECT CASE...END SELECT, что позволяет вам устанавливать связку IF...THEN, вместо сотен отдельных функций в вашей программе будут операторы SELECT CASE...END SELECT. Это также позволит вам иметь многократные команды в переменной CASE.

  Вот простой пример:

  PRINT " Главное меню "

  PRINT "1) Окончание программы"

  PRINT "2) Сюрприз"

  PRINT

  INPUT "Ваш выбор"; chc

  SELECT CASE chc

  CASE 1

  PRINT "Хорошо неправда ли!"

  END

  CASE 2

  PRINT "СЮРПРИЗ!!!!!!!!"

  PRINT "Вы были удивленны!!! А?"

  END

  CASE ELSE 'обратите сюда внимание

  PRINT "Почему вы выбрали 1 а не 2?" 'команда, которая позволяет вам   END

  END SELECT' захватывать недопустимые ответы (CASE ELSE)

  Все, что вы должны сделать для работы программы - выбрать один из 2-ух  разделов переменной "chc". Когда вы выберите раздел, ваша программа будет выполнятся. Если же вы не выбираете, то программа стоит на месте. Интересное место программы там, где я использовал оператор CASE ELSE. Например, если вы не выбрали 1 то этот оператор позволяет выполнять программу под остальными цифрами т.е. в нашем случае под цифрой 2. Выбор должен обязательно начинаться с оператора CASE SELCET а заканчиваться оператором END SELECT.

Изучим следующий полезный пункт - как делать случайные числа в QBASIC.

Очень простой способ сделать это, можно сделать с помощью команд LET, INT, и RND.

  Имеется простой пример этого:

  x = INT (RND * 10) + 1

  Это бы присвоило переменной "x" между число 1 и 10. Получить номер

Между 0 и 10, а не 1 и 10 можно избавившись " + 1 " в конце строки. Это все, что вы должны знать, чтобы сделать генерацию случайных чисел:

  INT   - округляет дробное число до целого.

  RND   - задаёт случайные числа

  Теперь, перейдём к командам файла. Это обязательно должно быть изучено! Для открытия файлов используется команда OPEN, чтобы закрыть файл команда CLOSE. Файл должен обязательно закрываться, иначе ваша программа не будет работать! Чтобы открыть файл, используют команду OPEN таким образом:

  OPEN "filename.ext" FOR (OUTPUT/INPUT/APPEND) AS #1(or other number)

  Открыть "Имяфайла.расширение" для (Ввода/Вывода/Присоединения) Как  #1(или другой номер)