Назначение: Считывание данных из оператора DATA и присваивание их переменным.
Синтаксис: READ <список переменных>
Аргумент <список переменных> представляет собой последовательность переменных языка BASIC, разделенных запятыми. Оператор READ всегда используется совместно с операторами DATA. Оператор READ устанавливает однозначное соответствие между <списком переменных> и данными, содержащимися в операторе DATA. Эти переменные могут быть как числовыми, так и строковыми. Попытка присвоить строковое значение числовой переменной вызывает синтаксическую ошибку на этапе выполнения. Считывание числового значения в строковую переменную не порождает ошибки и формирует ее значение как строку цифр.
Считываемые в переменные целого типа значения округляются перед присваиванием. Если считываемое значение выходит за допустимый диапазон изменения переменной, то возникает ошибка выполнения.
При считывании строковых значений в строковые переменные фиксированной длины лишние символы отбрасываются справа. Если строковые значения короче строковых переменных, то они выравниваются по левой границе, а оставшиеся позиции заполняются пробелами.
Отдельный оператор READ может иметь доступ к одному или нескольким операторам DATA, или несколько операторов READ могут использовать один и тот же оператор DATA. Если число переменных в <списке переменных> оператора READ превышает количество значений в операторах DATA, то появляется сообщение об ошибке: Out of DATA - ошибка в данных.
Если число переменных в операторе READ меньше числа элементов одного или нескольких операторов DATA, то следующий оператор READ начнет чтение данных с первого непрочитанного элемента в операторах DATA. Если операторов READ больше нет, то лишние данные не используются.
Для того чтобы заново прочитать операторы DATA, используется оператор RESTORE.
Оператор установки флажка считывания в начало входного потока RESTORE
Назначение: Установка флажка считывания на выбранный оператор DATA. Синтаксис: RESTORE [[<номер строки> | <метка строки>}]
После выполнения оператора RESTORE без указания <номера строки> или <метки строки> следующий оператор READ будет считывать первый элемент из первого оператора DATA программы.
Если <номер строки> или <метка строки> заданы, то следующий оператор READ обратится к первому элементу выбранного оператора DATA, причем номер или метка строки должны относиться к программе уровня модуля. Отметим, что в среде QuickBASIC операторы DATA автоматически переносятся в программу уровня модуля.
Оператор вывода данных на терминал - PRINT
Назначение: Вывод данных на экран.
Синтаксис: PRINT [<список выражений>][{,;}]
Если аргумент <список выражений> опущен, то на экран выводится пустая строка. При наличии <списка выражений> значения выражений выводятся на экран. Выражения в списке могут быть числовыми или строковыми. Строковые константы должны быть заключены в кавычки. За выводимыми числами всегда следует пробел; положительным числам всегда предшествует пробел, а отрицательным - знак минус.
Расположение каждого выводимого на экран элемента определяется знаками препинания, используемыми для разделения элементов списка. BASIC разделяет строку на зоны по 14 символов. Запятая в списке выражений определяет вывод каждого очередного значения с начала следующей зоны. Переменные, разделенные точкой с запятой, печатаются непосредственно друг за другом. Один или несколько пробелов или символов табуляции между выражениями действуют аналогично точке с запятой.