Студопедия — Оператор присваивания
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Оператор присваивания






 

Переменной, имя которой указано в левой части выражения, присваивается значение правой части выражения.

Общая форма записи оператора присваивания:

LET <имя переменной> = <выражение>

 

Все элементы данных, входящие в состав выражения в правой части, должны быть определены к моменту выполнения оператора присваивания.

При записи оператора LET необходимо соблюдать следующие правила:

· если слева стоит числовая переменная, то справа должна быть числовая константа, переменная или арифметическое выражение;

· если слева стоит символьная переменная, то справа должна быть символьная константа или переменная.

В противном случае система выдаетсообщение об ошибке

НЕСООТВЕТСТВИЕ ТИПОВ

Служебное слово LET в большинстве версий языка можно опускать.

Ниже приведены примеры правильного присваивания значений переменным с помощью оператора LET:

A%=25'Целочисленной переменной А% присваивается значение 25

A%=12.8 'Целочисленной переменной А% присваивается значение 13, т.к. число 12.8 округляется до 13

А&=350000 'Целочисленной длинной переменной А& присваивается значение 350000

А!=899.99 'Переменной с плавающей десятичной точкой A! присваивается выражение 899.99

A$='ИТОГ''Символьной переменной А присваивается выражение ИТОГ.

3.2. Операторы ввода/вывода данных

Оператор INPUT обеспечивает ввод данных с терминала. Встретив этот оператор, интерпретатор языка Бейсик приостанавливает выполнение программы, выдает на экран символ-приглашение (обычно это знак вопроса) и переходит в состояние ожидания ввода значений для элементов списка ввода, перечисленных через запятую после служебного слова INPUT. С помощью одного оператора INPUT можно ввести значения сразу для нескольких переменных или элементов массивов. Вводимые с терминала данные должны разделяться запятыми, и тип каждого из них должен быть совместим с типом соответствующей ему переменной из списка ввода.

Оператор INРUТ позволяет выводить на экран текст некоторого сообщения. Этот текст должен указываться в виде строки символов, стоящей непосредственно за словом INРUТ, строка при этом заключается в кавычки и отделяется от списка ввода разделителем (запятой или точкой с запятой). Если после сообщения в операторе INРUТ стоит точка с запятой, то в конце выдачи сообщения на экран выводится еще и стандартный символ-приглашение "?". Если же сообщение отделяется от списка ввода запятой, то символ-приглашение на экран не выводится. В этом случае вводимые пользователем значения будут располагаться непосредственно за последним символом сообщения.

Сообщение — это, как правило, подсказка пользователю, значения каких переменных и в каком порядке нужно вводить по данному оператору.

Общий вид оператора INPUT:

INPUT [;] ["приглашение"{; |,}] список переменных

LINE INPUT [;] ["приглашение";] переменная$

INPUT #номер файла%, список переменных

LINE INPUT #номер файла%, переменная$

 

где

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

список переменных одна или несколько переменных, разделенных запятыми, в которых хранятся данные, введенные от клавиатуры или считанные из файла. Имя переменной может состоять из 40 символов и должно начинаться с буквы. Допустимыми являются символы A,a-Z,z, 0-9 и точка (.).

переменная$ хранит строку символов, введенных от клавиатуры или считанных из файла.

номер файла% номер открытого файла.

INPUT использует запятую для разделения записей.

LINE INPUT считывает все символы до клавиши ENTER.

При вводе с клавиатуры точки с запятой, стоящей сразу после INPUT, курсор остается в той же строке до нажатия пользователем клавиши Enter.

 

Для вывода результатов работы на экран дисплея в языке Бейсик используется оператор PRINT. Общий вид оператора PRINT:

PRINT [#номер_файла%,][выражения][{; |,}]

LPRINT [выражения] [{;|,}]

где

номер_файла% номер открытого файла. Если номер не указан, PRINT выводит данные на экран.

выражения одно или несколько числовых или символьных выражений для печати.

{; |,} Определяет, где начинается следующий вывод:

; - печать сразу после последнего значения.

, - печать в начале следующей зоны печати. Ширина зоны печати

– 14 символов.

С помощью оператора PRINT в процессе выполнения программы можно выдать на экран значения констант, переменных, элементов массивов и выражений. Если элементом списка вывода является выражение, то сначала вычисляется его значение, а затем печатается результат. Элементы списка вывода оператора PRINT отделяются друг от друга запятой или точкой с запятой. Любые два значения, разделенные в операторе PRINT точкой с запятой, выводятся непосредственно друг за другом. Числовые значения, однако, при печати отделяются от следующего элемента вывода одним пробелом, так как слитный вывод числовых значений плохо воспринимается. Пробел ставится в конце выводимого числа, но из-за того, что знак плюс, как правило, опускается и вместо него выводится пробел, положительные числа обрамляются пробелами с двух сторон. Ниже приводится пример, иллюстрирующий вывод на экран строк символов, положительных и отрицательных чисел. После выполнения трех операторов

XI =5.2

У1=-6.4

PRINT "Х1="; XI; " У1="; У1;Х1+У1

на экране появится следующая строка:

Х1= 5.2 У1=-6.4-1.2

Замена в операторе PRINT точки с запятой на запятую позволяет выводить значения в табличной форме. Строка терминала при этом разбивается на зоны по 14 позиций в каждой. Значение следующего за запятой элемента из списка вывода печатается с левого края следующей зоны, например оператор

PRINT "Х1=";Х1,"У1=";У1,Х1+У1

выведет на экран строку

X1= 5.2 У1=-6.4 -1.2

<———14———><———14———><———14———>

Если последняя зона текущей строки уже заполнена, то происходит автоматический переход на следующую строку экрана.

Две запятые подряд в списке вывода вызывают пропуск зоны в текущей строке. Если список вывода оператора PRINT заканчивается запятой или точкой с запятой, то следующий оператор PRINT продолжит вывод на той же строке. Например, операторы

Х=3.14159/2

PRINT "Х=";Х,

PRINT "SIN(Х)=";SIN(Х )

напечатают одну строку вида

Х= 1.570795 SIN(Х)=.99999999999912

Оператор PRINT без списка вывода вызывает переход курсора на новую строку.

Управлять выводом данных в операторе PRINT можно также при помощи встроенных в язык функций ТАВ и SРС. ФункцияТАВ(N) перемещает текущую позицию печати следующего символа вперед в N-ю позицию строки. Если указана позиция, находящаяся левее текущей, то большинство систем перемещает текущую позицию в N-ю позицию следующей строки. Например, оператор печати

PRINT 2.5; ТАВ (8); 6.4; ТАВ(16); -9.9

напечатает значение 6.4, начиная с 8-й позиции строки (для положительных чисел вместо знака плюс выводится пробел), а 9.9 - начиная с 16-й позиции:

2.5 6.4 -9.9

<——8——>

<————16————>

Указание положения следующего выводимого символа при помощи функции ТАВ обычно применяется при выводе всевозможных таблиц. Для удобства пользователей во многих системах определена также функция SPC(N), она выводит N пробелов в данном месте строки. Например, оператор печати

PRINT 2.5; SРС (8); 6.4; SРС (16); -9.9

выведет строку вида

2.5 6.4 -9.9

Параметр N в обеих функциях может быть задан выражением, значение которого приводится к целому типу.

В языке Бейсик предусмотрен также специальный оператор форматного вывода - PRINT USING. Как и оператор PRINT, оператор PRINT USING содержит список значений, предназначенных для вывода. Первым в этом списке обязательно должно стоять строковое значение, оно задает вид, в котором будут выводиться все остальные элементы списка вывода.

Общий вид оператора:

PRINT [#номер_файла%,] USING символы_формата$; выражения [{; |,}]

Описание формата заключается в кавычки и представляет собой образ формы представления выводимых числовых или строковых значений. В качестве разделителя в одних версиях используется запятая, в других — точка с запятой. Список вывода — обычный список оператора PRINT.

Сначала рассмотрим форматный вывод числовых значений. Числовой формат задается с помощью символов " # ". Каждый такой символ соответствует одному выводимому разряду числа. Поле чисел всегда выравнивается по правому краю. Место десятичной точки определяется положением символа "." в числовом формате.

Например, операторы

PRINT USING "###.##";-l2.345,35.1

PRINT USING "###.##";34l.26,2435.9

PRINT USING "###";-98.7937

выведут на экран данные в следующем виде:

-12.35 35.10

341.26%2435.90

-99

Из примера видно, что незначащие нули слева не выводятся (заменяются пробелами), а незначащие нули после десятичной точки печатаются в соответствии с форматом. Если знаков в дробной части числа больше, чем указано в формате, производится округление этого числа. Если знаков в целой части числа больше, чем позиций в формате, оно все равно выводится полностью, а перед самой первой его цифрой выводится знак процента. При этом, как видно из примера, десятичная точка оказывается не на своем месте. При выводе чисел в подобных форматах под знак отрицательных чисел отводится позиция формата, а знак плюс не выводится.

Можно задать формат, в котором под знак числа отводится позиция, задаваемая в формате, для этого необходимо добавить в формат знак " + ". Знак числа " + " или " — " добавляется в начало выводимого числового значения, если " + " является первым символом числового формата, и в конец, если знак "+" является последним символом формата. Операторы

PRINT USING "+##.###";36.4,-2.74

PRINT USING "###.##+";96.97,-10.147

напечатают числовые значения в виде двух столбцов:

+36.400 -2.740

96.97+ 10.15-

В формат можно также добавлять знак "—", но только в качестве последнего символа формата. В этом случае после отрицательного числа должен выводиться знак "—", а после положительного — пробел.

Для наглядности большие числа часто записываются с запятыми через каждые три цифры. С помощью оператора PRINT USING можно выводить числа и в таком виде. Обычно запятая ставится перед десятичной точкой, но может указываться в любом месте формата до десятичной точки.

Оператор

PRINT USING "########,.#";12349876.5

выведет число, разделив его на триады:

12,349,876.5

Для вывода числовых значений в экспоненциальной форме надо поставить в конце обычного числового формата четыре символа ^^^^. Например, оператор

PRINT USING "###.##^^^^";-3478.268

выведет число в экспоненциальной форме:

-34.78Е+02

При этом первая из позиций, предназначенных для старших цифр, резервируется для знака числа.

С помощью оператора PRINT USING можно выводить и строковые значения, причем либо полностью, либо заданное число символов строковой переменной, отсчитываемое слева. Знак & в строковом формате означает строковое поле переменной длины и обеспечивает вывод всей строки. Знак! означает, что выводится только первый символ строкового значения. Пара знаков обратной косой черты задает строковое поле фиксированной длины. Длина этого поля определяется как общее число символов формата, включая обе косые черты и все заключенные между ними пробелы. Строковое значение при таком формате выводится в поле начиная с крайней левой позиции.

Если выводимая строка символов не помещается в заданное поле, то лишние правые символы отбрасываются, Если же длина строки меньше длины поля, то оставшиеся свободные места справа в поле заполняются пробелами. Например, операторы

PRINT USING"!"; "BASIC", "FORTRAN", "ALGOL"

PRINT USING "\ \"; "ОТЛИЧНО","*", "ХОРОШО"

PRINT USING "&"; "УДОВЛЕТВОРИТЕЛЬНО"

выведут на экран три строки:

BFA

ОТЛ* ХОP

УДОВЛЕТВОРИТЕЛЬНО

Для вывода результатов работы программы на устройство печати используются операторы LPRINT и LPRINTUSING.

Форматы этих операторов аналогичны соответственно форматам операторов PRINT и PRINTUSING.

Оператор LOCATE устанавливает курсор в нужное место на экране дисплея и позволяет управлять параметрами самого курсора.

Формат записи оператора LOCATE

LOCATE [номер-строки][,[номер-колонки][

[,[начало-курсора][,конец-курсора]]]]

Операнды номер-строки и номер-колонки задают место, куда помещается курсор. Значение числового выражения, задающего номер строки, находится в пределах от 1 до 25; значение числового выражения, задающего номер колонки, лежит в пределах от 1 до 40 или от 1 до 80 в зависимости от установленной ширины строки экрана дисплея. Если третий позиционный параметр равен 0, то курсор будет не видим на экране во время выполнения программы; 1- видим. По умолчанию этот параметр равен 1. Параметры начало-курсора (верхняя линия) и конец-курсора (нижняя линия) задают количество линий сканирующего луча, которые формируют толщину курсора. Значения этих параметров лежат в пределах от 0 до 31. Линии нумеруются сверху вниз от 0 до 13 для алфавитно-цифрового и от 0 до 7 для графического дисплеев.

В результате выполнения оператора LOCATE курсор будет установлен в указанную строку и колонку с заданной видимостью и толщиной. Толщиной курсора можно управлять только в текстовом режиме. Если какой-то операнд опущен, то система будет использовать значение, которое установлено по умолчанию в системе или предыдущим оператором LOCATE.

Пример.

 

СLS

LOCATE 2,5

PRINT "ПРОГРАММА ЗАВЕРШЕНА УСПЕШНО"







Дата добавления: 2015-09-06; просмотров: 490. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Классификация холодных блюд и закусок. Урок №2 Тема: Холодные блюда и закуски. Значение холодных блюд и закусок. Классификация холодных блюд и закусок. Кулинарная обработка продуктов...

Пункты решения командира взвода на организацию боя. уяснение полученной задачи; оценка обстановки; принятие решения; проведение рекогносцировки; отдача боевого приказа; организация взаимодействия...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия