Как называется оператор ввода данных
Как называется оператор ввода данных
1. Составной оператор (операторские скобки)
Составной оператор применяется в тех случаях, когда синтаксис языка допускает использование только одного оператора, а смысл тре бует выполнения нескольких действий. Пример составного оператора:
writeln(*q=’, sqr(x)+sqr( у )+sqr(z))
Фактически весь раздел операторов, обрамленный словами Ье-. end , представляет собой один составной оператор.
Внимание: Перед служебным словом end разделитель (символ «;») не ставится.
2. Процедуры ввода и вывода. Для того чтобы программа могла работать в диалоговом режиме (позволяла бы вводить данные и видеть результаты работы на экране), существуют процедуры ввода и вывода. Существует две формы процедуры ввода:
Процедура readln аналогична предыдущей, отличие заключается в том, что ПОСЛЕ выполнения процедуры readln курсор на экране монитора переходит на новую строку.
Примеры
Аналогично существует две формы процедуры вывода:
В результате выполнения данной процедуры значения переменных xl , xl , хЗ. будут выведены на экран монитора. Если необходимо вы вести на экран какой-либо текст, то внутри процедуры write этот текст записывается в апострофах:
Результат выполнения этих процедур:
writeln; writeln; writeln; writeln; writeln;
приведет к тому, что курсор опустится на пять строк вниз.
Примеры
Процедуры вывода обеспечивают вывод на экран не только значе нии переменных, но также и значений выражений. Например, в результате выполнения следующего фрагмента программы:
х:=4; у:=3; writeln (* Значение выражения = ‘, x + sqr ( y ));
получим на экране монитора следующее сообщение:
«Значение выражения = 13»
В процедурах вывода write и writeln имеется возможность установить ширину поля вывода.
Вызовом write (у: i : j ) в крайние правые позиции поля шири ной i символов выводится десятичное представление значения у в фор мате с фиксированной точкой, причем после десятичной точки выводится j цифр, представляющих дробную часть числа. |
Операторы ввода и вывода
Операторы ввода и вывода служат для организации обмена информацией между внешними устройствами (дисплей, клавиатура, принтер) и памятью ЭВМ.
Оператор ввода имеет следующие форматы:
1. READ (a1, a2. ak), где a1, a2. ak – список вводимых параметров. Здесь, каждое вводимое значение присваивается последовательно данным переменным.
2. READLN (a1, a2. ak) – каждое вводимое значение присваивается последовательно переменным a1, a2. ak, после чего происходит переход на новую строку.
3. READLN – обеспечивает пропуск одной строки и переход к началу новой строки.
Примечание. Ввод переменных логического типа недопустим. Числовые значения задаются после запуска программы через пробел (или ввод).
Например, ввести данные A=5, B=1.7, C = ‘L’.
5_1.7_L /после запуска программы на выполнение/
Оператор вывода имеет следующие форматы:
1. WRITE (b1, b2. bk), где b1, b2. bk – список переменных подлежащих выводу. Выводимые значения размещаются в одной строке.
2. WRITELN (b1, b2. bk) – осуществляется вывод значений b1, b2. bk и после вывода последнего значения осуществляется переход на новую строку.
3. WRITELN – обеспечивает пропуск строки в файле и переход к новой строке.
Примечание. В качестве выводимых параметров могут быть целые, вещественные, символьные и логические переменные и константы.
Пример 1.1. Вычислить значение выражения по формуле.
Рекомендуется числитель и знаменатель вычислить как отдельные выражения:
A := exp (abs(x-z)) + sqr (sin (sqr(z)*z));
B := sin (x) / cos (x) – sqrt (abs(cos (sqr(x))-exp(z)));
|
Задача 1.1. Рассмотрим разработку алгоритма и программы вычисления площади треугольника по формуле Герона.
VAR A, B, C, P, S : REAL;
WRITELN (‘Введите стороны треугольника’);
Задача 1.2. Ввести с клавиатуры четырёхзначное число и найти произведение цифр этого числа.
VAR A, A1, A2, A3, A4, A5, A6, A7 : INTEGER;
WRITELN (‘Введите целое 4-хзначное число’);
A7 := A1 * A3* A5*A6; // 420
WRITELN (A1, ‘*’, A3, ‘*’, A5, ‘*’, A6, ‘=’, A7);
Вопросы для самопроверки
1. Какие известны объекты алгоритмов?
2. Какова структура программы на языке Паскаль?
3. Дайте определение раздела Var?
4. Зачем используется раздел Type?
5. Что описывают в разделе Cons?.
6. Где располагают раздел Procedure, Function?
7. Каков диапазон значений целого типа?
8. Каков объём памяти требуется для данных вещественного типа?
9. Как описываются данные символьного типа?
10. Для чего используют данные логического типа?
11. Объясните принцип работы оператора присваивания?
12. Каков формат оператора ввода?
Как называется оператор ввода данных
Оператор присваивания
Используется для изменения значений переменных. В языке Паскаль эта команда обозначается так:
При этом значение выражения из правой части команды присваивания заменяет текущее значение переменной из левой части. Тип значение выражения должен совпадать с типом переменной. Выражение может быть арифметическим, логическим или литерным. Важно, чтобы тип величины был согласован с видом выражения.
Пример:
а:=2; b:=8;
S:=а+b;
После выполненных последовательно данных трех команд переменная S принимает значение равное 10.
При помощи оператора присваивания переменной могут присваиваться константы и выражения, значения переменных любого типа.
Как только в программе встречается переменная, для неё в памяти отводится место. Оператор присваивания помещает значение выражения в место, отведённое переменной.
Если в процессе выполнения программы встречается переприсваивание (т.е. та же самая переменная принимает другое значение), то старое значение переменной стирается, на свободное место записывается новое значение. Команда присваивания позволяет лучше понять смысл слова переменная (т.е. меняющая своё значение по ходу программы).
Оператор ввода и вывода
Для ввода исходных данных используются операторы Read и ReadLn.
Read (список переменных);
Readln (список переменных);
Переменные в списке отделяются друг от друга запятой. Переменные могут быть целого, вещественного, символьного, логического, строковых типов.
При вводе значений из буфера используется указатель считывания. Процедура Read ожидает ввод с клавиатуры значений переменных из списка.
В качестве значения символьной переменой используется любой символ, на который в данный момент указывает указатель считывания. Признаком конца строкового значения является признак конца строки.
Процедура readln после ввода значений всех переменных списка очищает буфер ввода.
Пусть a =5, b =1, c =1, тогда ввод можно осуществить следующим образом:
Если в программе записать
то ввод осуществляется следующим образом:
Пусть a =’+’, b =’8’, то ввод осуществляется следующим образом:
Для вывода данных используются процедуры Write и Write Ln.
Оператор вывода имеет вид:
Write (список выражений);
Writeln (список выражений);
Выражения в списке отделяются запятой. Значения выражений могут быть целого, вещественного, символьного, логического, строковых типов.
Вещественные значения выводятся в экспоненциальной форме. Процедура Write выводит значения из списка подряд и устанавливает курсор в следующую позицию после последнего символа.
Процедура Writeln выводит значения из списка подряд, но после вывода последнего значения переводит курсор в первую позицию следующей строки экрана.
Операторы ввода вывода Паскаль
Как организован ввод-вывод данных с терминального устройства? Для начала (кто не знает), определим терминальное устройство. Терминальное устройство — это клавиатура, дисплей, т.е. то, с чем пользователь обычно работает. Какие существуют операторы ввода вывода Паскаль?
Ввод данных Паскаль:
Как ввести данные в Паскале? Очень легко и просто! Ввод исходных данных в Паскале осуществляется процедурой readln:
В этом примере процедура readln осуществляет чтение k значений исходных данных и присваивает эти значения переменным b1, b2,…, bk с переходом на новую строку (похожая процедура read отличается от readln отсутствием перехода на следующую строку). Когда мы вводим данные в Паскале, происходит своеобразное преобразование внешней формы во внутреннюю, которую определяет тип переменных.
Переменные, входящие в состав списка ввода, могут относиться к разным типам: целому, действительному, символьному. Однако чтение логических данных не допускается в Паскале. Исходные данные (т.е. их значения) отделяются друг от друга нажатием клавиши Enter и Tab, пробелами (при вводе данных недопустимо разделять числа запятыми).
Вывод данных Паскаль:
Теперь расскажем о выводе данных в Паскале. Чтобы вывести на экран результат работы вашей программы, обычно пользуются двумя процедурами:
write(b1,b2,…bk) — осуществляет вывод значений переменных b1, b2,…, bk в строку экрана.
writeln(b1,b2,…, bk) — производит как вывод данных на экран, так и переход к началу следующей строки.
Процедура writeln может использоваться без параметров, тогда просто производится пропуск исходной строки и переход к началу следующей. В списке вывода переменные могут иметь нескольких типов: целый, действительный, символьный или булевский. К элементам списка вывода относятся еще выражения и строки. Форма представления значений в поле вывода соответствует типу переменных и выражений:
Оператор вывода создает возможность задать ширину поля вывода для каждого элемента списка вывода, которые будут иметь вид: А:К, где А — строка или выражение, К — выражение либо целочисленная константа. Возникают две ситуации при этом:
Элемент списка вывода для величин действительного типа может иметь вид: А:К:М, где А — выражение действительного типа или переменная, К — ширина поля вывода (выражение или константа), М — число цифр дробной части выводимого значения(выражение или константа). В данной ситуации действительные значения будут выведены как десятичное число с фиксированной точкой. Представим пример записи операторов вывода:
var rM, rN: real;
iS, iT:integer;
bZ, bL: boolean;
chY, chD, chH, chX: char;
begin
writeLn(rM, rN:10:2);
writeLn(iS, iT:8);
writeLn(bZ, bL:8);
writeLn(chY, chD, chH, chX);
Pascal | Лекция №3
Операторы присваивания, операторы ввода-вывода
Содержание:
Поскольку язык Pascal алгоритмический, то для записи шагов алгоритмов, для наглядного однозначного представления алгоритмов в стиле структурного программирования существует набор операторов. Основные операторы считаются простыми, остальные – структурными, т.е. в их состав могут входить другие операторы, причем глубина «вложенности» операторов не ограничена.
Операторы присваивания
Оператор присваивания предназначен для присваивания переменной значения выражения. Оператор обозначается символом «:=», в левой части указывается имя переменной, в правой – вычисляемое выражение. Выражение может составлять число, знаки арифметических действий, круглые скобки, переменные и константы, процедуры и функции, допускаемое вложение друг в друга. Обязательное условие — совместность типов данных. Оператор считается синтаксически правильным, если тип выражения в правой части совпадает с типом переменной. Исключение составляет случай, когда выражение имеет целый тип, а переменная – вещественный. Допускается использование этого оператора с переменными любого типа, кроме файлового. Синтаксис:
Если в левой части оператора присваивания указана переменная типа Boolean, то в правой части оператора должно быть задано логическое выражение, задающее правило вычисления логического значения (true или false). Синтаксис:
Логическое выражение есть логическая формула, записанная на языке программирования. Логическое выражение состоит из логических операндов, связанных логическими операциями и круглыми скобками. Результатом вычисления логического выражения является булева величина (true или false). Логическими операндами могут быть логические константы, переменные, функции, операции отношения. Один логический операнд является простейшей формой логического выражения.
Примеры использования оператора присваивания:
с переменными целого типа: x := 200;
вещественного: y := Sin(Pi/3);
символьного: с := ‘6’;
булевского: test := false;
R – радиус окружности (тип – integer или real)
Pi – константа, равная значению p.
Операторы ввода-вывода
Ввод данных – это передача информации от внешних устройств в оперативную память. Вводятся, как правило, исходные данные решаемой задачи.
Вывод данных – обратный процесс, когда данные передаются из оперативной памяти на внешние носители (принтер, дисплей, магнитные устройства и т.д.). Результаты решения всякой задачи должны быть выведены на один из этих носителей.
Основными устройствами ввода-вывода у ПК являются клавиатура и экран монитора. Именно через эти устройства главным образом осуществляется диалог между человеком и ПК.
Для того чтобы программа могла работать в диалоговом режиме (позволяла бы вводить данные и видеть результаты работы на экране) существуют операторы ввода и вывода.
Существует две формы оператора ввода: Read и ReadLn. Процедура ввода с клавиатуры имеет следующий формат:
Read ( ),
где – это последовательность имен переменных, разделенных запятыми.
Другой вариант оператора ввода с клавиатуры имеет вид:
ReadLn ( )
Оператор ReadLn аналогичен предыдущему, отличие заключается в том, что при выполнении одного оператора ReadLn курсор на экране монитора переходит на новую строку.
Аналогично существует две формы оператора вывода. Оператор вывода на экран (обращение к стандартной процедуре вывода) имеет следующий формат:
Здесь элементами списка вывода могут быть выражения различных типов. В результате выполнения данного оператора значения списка будут выведены на экран монитора.
Если необходимо вывести на экран какой-либо текст, то внутри оператора Write этот текст записывается в апострофах.
Второй вариант процедуры вывода на экран:
Его действие отличается от оператора Write тем, что после вывода последнего в списке значения происходит перевод курсора к началу следующей строки. Оператор WriteLn может использоваться без каких-либо параметров – в этом случае после выполнения такого оператора курсор перемещается на одну позицию вниз.
В операторах вывода Write и WriteLn имеется возможность установить ширину поля вывода. Если X и I – целочисленные выражения, а Y — вещественное выражение, то вызов
Write ( X : I, Y : I ) — печатает значения X и Y каждое в крайние правые позиции полей шириной I;
Write ( Y : I : X) – вызовом в крайние правые позиции поля шириной I символов выводится десятичное представление значения Y в формате с фиксированной точкой, причем после десятичной точки выводится X цифр, представляющих дробную часть числа.
Составной оператор
Для того чтобы задать последовательное выполнение (по порядку, один за другим) нескольких операторов, в языке Pascal существует составной оператор. Операторы, входящие в составной, разделяются символом «;», в начале ставится служебное слово Begin, в конце – End.
Составной оператор применяется в тех случаях, когда синтаксис языка допускает использование только одного оператора, а смысл требует выполнения нескольких действий.
Обратите внимание: перед служебным словом End разделитель (символ «;») не ставится.
Условный оператор
Очень часто так же, как и в жизни, при решении задач некоторые действия выполняются в зависимости от истинности каких-либо условий. Например, мы берем с собой зонт, если идет дождь или на небе тучи. Или часто встречающиеся в математике определения функций:
Здесь значение функции f вычисляется в зависимости от величины x по разным формулам.
Для задания выбора того или иного действия в зависимости от условия в языке Pascal предназначен условный оператор, который имеет две формы: полную и сокращенную.
В качестве условия используется значение логического выражения, в качестве операторов – любой простой или составной оператор, в том числе и сам условный оператор.
И по ветке then, и по ветке else должен выполняться единственный оператор. Если по смыслу задачи необходимо выполнить несколько операторов, тогда следует использовать составной оператор.
Часть условного оператора, начинающаяся со слова else, может отсутствовать, такая форма оператора называется сокращенной и выглядит следующим образом:
Оператор в этом случае выполняется, если условие истинно, иначе программа переходит к следующему оператору.
Пример полной формы: рассмотрим определение функции f(x):
Если в нашем примере описать логическую переменную В, значение которой будет равно true, если x
Пример краткой формы:
При использовании вложенных условных операторов может возникнуть неоднозначность, например:
В данном случае необходимо помнить, что служебное слово else всегда ассоциируется с ближайшим по тексту программы словом if, которое еще не связано с else. А чтобы такая двусмысленность не возникала, лучше всего пользоваться составным оператором:
Теперь дадим строгое описание условного оператора в форме синтаксической диаграммы:
Пример: По длинам трех сторон треугольника a, b, c вычислить его площадь.
Условный оператор Case (оператор варианта)
Более обобщенной формой условного оператора, учитывающей произвольное число альтернатив, является оператор варианта. Использование этого оператора позволяет задавать выполнение некоторых действий для нескольких различных значений одного выражения:
Присвоить строке S значение дня недели для заданного числа D при условии, что в месяце 31 день и 1-ое число – понедельник.
Для построения алгоритма воспользуемся операцией mod, позволяющий вычислить остаток от деления двух целых чисел, и с условием, что 1-ое число – понедельник. Тогда можно записать следующий оператор Case:
Чтобы завершить построение алгоритма решения поставленной задачи, необходимо ограничить область возможных значений переменной D (тип — integer):
В качестве можно также задать список и (или) диапазон значений.
Контрольные вопросы