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

  Команда OPEN гораздо более сложна чем показано на этом примере, но я попытаюсь всё это объяснить. Есть несколько типов открытия файлов:[OUTPUT/INPUT/APPEND] для Ввода, Вывода и Присоединения. Если вы хотите прочитать из файла, строку или несколько строк, то используйте оператор INPUT. Записывать в файл, вы должны использовать команду OUTPUT. И присоединять к файлу (прибавлять к концу файла), вы должны использовать команду APPEND. Разберём как всё это работает. Допустим, мы открыли наш файл. Теперь, что мы делаем? Вы все еще помните команды PRINT и INPUT, так в зависимости от того, что вы делаете вводите ли вы или выводите. Используют команду PRINT, чтобы печатать и команда INPUT, чтобы читать из файла. Нужно так же задавать номер файла, (например#1).

Есть пример:

  OPEN "file.txt" FOR OUTPUT AS #1

  PRINT #1, "Привет мир!"

  CLOSE

  OPEN "file.txt" FOR INPUT AS #1

  INPUT #1, s$

  PRINT s$

  CLOSE

  Вы должны использовать LINE INPUT, чтобы читать полную строку в файле.   Например:

  OPEN "file.txt" FOR INPUT AS #1

  LINE INPUT #1, s$

  PRINT s$

  CLOSE

  Это читало бы полную строку из файла в переменную "s$". Только заново

  элемент, при использовании OUTPUT, это стирает то, что находится в файле.

  Четвертая глава на этом заканчивается. Вот задание:

  1.Сделать программу в которой нужно сгенерировать случайное число между 1 и   20. Дать играющему 5 шансов, и после того, как вы ввели число, программа должна сообщать высоко или низко введённое вами число.

  2.Сделать программу, которая бы сохраняла высшие результаты в файл.

  Замечательного дня!!!! :)))))

Учебники: /  QBasic -  №01  -  Глава  5  /

Глава ПЯТАЯ .  Привет !  В этой главе ,  мы изучим операторы :

  WHILE...WEND, Random Access Files, APPEND, GET (file I/O), SUB...END,  SUB, PUT(file I/O), FUNCTION...END FUNCTION, LEN, GOSUB...RETURN, TYPE...END, TYPE, DIM SHARED, COMMON SHARED, RTRIM$

  Чтож ,  приступим !  Мы изучим другой метод выполнения цикла, путь прибавления к концу последовательного файла, структурного программирования. Сначала вспомним прошлые способы выполнения цикла. Как вы помните DO...LOOP и FOR...NEXT, а сейчас мы изучим операторы WHILE...WEND. Этот оператор очень похож на цикл DO...UNTIL. Вот как выглядит синтаксис этого цикла:

  WHILE<условие>

  ... 

WEND

  Скажем, Вы хотите сделать простую игру в предположения. Всё, что требуется - простой цикл, как в этом примере:

  RANDOMIZE TIMER

 PRINT "Игра - угадай!"

 number = INT(RND * 10) + 1'случайное число от 1 до 10

 PRINT "Секретный номер находится в промежутке от 1 до 10"

  WHILE guess <> 10' цикл до предположения = 10

 INPUT "Попыток "; guess

 tries = tries + 1'счётчик попыток

  WEND

  PRINT "Хорошая работа! Вы угадали секретный номер с "; tries; "  попыт(ок),(ки)"

 END

  Эта программа составлена только в 10 строк! Вот задание - объясните, что делает каждая строча(как вы видите на некоторых строчках есть комментарии). Теперь вы поняли, как действует цикл WHILE...WEND, он простой, и все же полезный!

 Мы говорили относительно файлов в Главе 4. Вы помните команды INPUT и OUTPUT для последовательного входа в файл. Есть еще один способ добавления к файлу информации, используя команду APPEND. Команда используется точно так же как и OUTPUT и INPUT:

  OPEN "file.txt" FOR APPEND AS #1

  APPEND действует точно также как и OUTPUT и кроме этого не стирает то, что уже записано в файле, прежде чем добавлять к этому другой текст. Это полезно для продолжающихся высоких списков счета и связки других вещей.

  Сейчас мы должны изучить структурное программирование. Очень не удобно в большой программе с тысячами строк и множеством операторов найти проблему! Поэтому, умные люди в 1960-ых разработали кое-что называемое "структурным программированием - Ming. " При использовании этой методики, мы можем использовать "подпрограммы" и "функции" в создании наших программ, чтобы упорядочить программный текст.

 Чтобы создавать и редактировать подпрограмму в QBASIC, нажимают кнопку на инструментальной панели меню [E]dit(редактировать) > New [S]UB...(Новая подпрограмма...). QBASIC спросит у вас относительно имени подпрограммы. Можно давать любое имя. QBASIC тогда позволит вам редактировать текст подпрограммы. В тексте подпрограммы используются те же операторы что и в обычной программе, после того как вы написали подпрограмму, вы можете её посмотреть, идите к [V]iew на инструментальной панели, выберите [S]UBS. И затем выберите имя файла вашей подпрограммы в меню. Если Вы хотите вернуться к главному тексту программу, то, выберете в этом же меню название вашей программы. Знайте, что переменные, которые Вы создаете в подпрограмме доступный только в этой же подпрограмме, а переменные в теле программы доступны только в нём, сделать их общедоступными можно с использование следующая команда в начале подпрограммы: