Как оформляется оператор вывода на экран
Как оформляется оператор вывода на экран
При проведении вычислений или другой обработки данных в программе необходимо вывести результаты из памяти компьютера, для того, чтобы пользователь мог их увидеть. Самой простой формой вывода является вывод данных на экран компьютера.
Простейшая форма записи операторов вывода на экран имеет вид:
Write (выражение1, выражение2, …);
Writeln (выражение1, выражение2, …);
В скобках оператора w riteln (или write ) указывается так называемый список вывода, то есть имена переменных, выражения, значения которых необходимо вывести на экран. Имена перечисляется через запятую. Пробелы, кроме входящих в строковые константы, игнорируются.
Примеры написания оператора вывода на экран (а, b –числовые переменные):
writeln ( a ); <вывод на экран значения переменной а>
writeln (‘переменная х не определена’); <вывод на экран строковой константы>
writeln ( a + cos (5* b )); <вывод на экран значения алгебраического выражения>
writeln (‘ускорение а=’, a ); <вывод на экран строковой константы и значения переменной>
write ln; <вывод на экран пустой строчки, полезен разделения блоков выводимых данных>
Строковые константы в списке оператора вывода служат для вывода текста (в частности, пояснений для выводимых значений переменных). При выводе такой константы на экран, она выводится без изменения, апострофы отбрасываются. Результат исполнения приведенных операторов вывода на экран показан на рис.2.1.
Рис.2.1. Результат исполнения простейших операторов вывода на экран
Результат при t =2 имеет следующий вид:
Значение переменных t = 2.000000000 E +000 b = 2.8284271247461 E +000
Для организации читаемого расположения данных на экране используют форматированный вывод, описанный далее в п. 3.1.2.
Операторы ввода-вывода в языке Паскаль
Материал из ПИЭ.Wiki
Ввод данных — это передача информации от внешних устройств в оперативную память. Вводятся, как правило, исходные данные решаемой задачи. Вывод — обратный процесс, когда данные передаются из оперативной памяти на внешние носители (принтер, дисплей, магнитные устройства и т.д.). Результаты решения всякой задачи должны быть выведены на один из этих носителей.
Основными устройствами ввода-вывода у персонального компьютера являются клавиатура и дисплей (экран монитора). Именно через эти устройства главным образом осуществляется диалог между человеком и ПК.
Оператор ввода read
Процедура ввода с клавиатуры (обращение к стандартной процедуре ввода) имеет следующий формат:
где — это последовательность имен переменных, разделенных запятыми. При вводе исходных данных происходит преобразование из внешней формы представления во внутреннюю, определяемую типом переменных. Переменные, образующие список ввода, могут принадлежать либо к целому, либо к действительному, либо к символьному типам. Чтение исходных данных логического типа в языке Паскаль недопустимо. Значения исходных данных могут отделяться друг от друга пробелами и нажатием клавиш табуляции и Enter.
Если в программе имеется несколько операторов read, то данные для них вводятся потоком, т.е. после считывания значений переменных для одного оператора read данные для следующего оператора читаются из той же строки на экране, что и для предыдущего до окончания строки, затем происходит переход на следующую строку.
Другой вариант оператора ввода с клавиатуры имеет вид:
Этот оператор отличается от read только тем, что после считывания последнего в списке значения для одного оператора readln данные для следующего оператора будут считываться с начала новой строки.
Оператор вывода write
Оператор вывода на экран (обращение к стандартной процедуре вывода) имеет следующий формат:
Переменные, составляющие список вывода, могут относиться к целому, действительному, символьному или логическому типам. В качестве элемента списка вывода кроме имен переменных могут использоваться выражения и строки. При выводе на экран нескольких чисел в строку они не отделяются друг от друга пробелами. Программист сам должен позаботиться о таком разделении.
Второй вариант процедуры вывода на экран:
Его действие отличается от оператора write тем, что после вывода последнего в списке значения происходит перевод курсора к началу следующей строки. Оператор writeln, записанный без параметров, вызывает перевод строки.
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):
В качестве можно также задать список и (или) диапазон значений.
Контрольные вопросы
Как оформляется оператор вывода на экран
Вывод данных
В предыдущей теме мы познакомились со структурой программы на языке Pascal, научились описывать данные, рассмотрели оператор присваивания. Этого достаточно для того, чтобы записать программу преобразования данных. Но результат этих преобразований нам виден не будет.
Для вывода данных из оперативной памяти на экран монитора используется оператор вывода write :
Здесь в круглых скобках помещается список вывода — список выражений, значения которых выводятся на экран. Это могут быть числовые, символьные и логические выражения, в том числе переменные и константы.
Произвольный набор символов, заключённый в апострофы, считается строковой константой. Строковая константа может содержать любые символы, набираемые на клавиатуре.
Оператор write (‘s= ‘, s) выполняется так:
Если значение переменной s равно 15 и она имеет целочисленный тип, то на экране появится: s=15
Если значение переменной s равно 15, но она имеет вещественный тип, то на экране появится: s=1.5Е+01
При выполнении оператора вывода все элементы списка вывода печатаются непосредственно друг за другом. Так, в результате работы оператора write (1, 20, 300) на экран будет выведена последовательность цифр 120300, которая будет восприниматься нами как число 120300, а не как три отдельные числовые константы. Сделать выводимые данные более доступными для восприятия можно разными способами:
| Вариант организации вывода | Оператор вывода | Результат |
|---|---|---|
| Добавить разделители — запятые | write (1, ‘,’, 20, ‘,’, 300) | 1,20,300 |
| Добавить разделители — пробелы | write (1, ‘ ‘, 20, ‘ ‘, 300) | 1 20 300 |
| Указать формат вывода | write (1:3, 20:4, 300:5) | 1 20 300 |
Формат вывода — это указываемое после двоеточия целое число, определяющее, сколько позиций на экране должна занимать выводимая величина. Если цифр в числе меньше, чем зарезервированных под него позиций на экране, то свободные позиции дополняются пробелами слева от числа. Если указанное в формате вывода после двоеточия число меньше, чем необходимо, то оно автоматически будет увеличено до минимально необходимого.
Для вывода вещественного числа в списке вывода для каждого выражения указываются два параметра: 1) общее количество позиций, отводимых под число; 2) количество позиций в дробной части числа:
| Оператор вывода | Результат выполнения оператора |
|---|---|
| write (‘s=’, s:2:0); | s=15 |
| write (‘s=’, s:3:1); | s= 15.0 |
| write (‘s=’, s:5:1); | s= 15.0 |
Первая программа на языке Pascal
Пользуясь рассмотренными операторами, составим программу, вычисляющую длину окружности и площадь круга радиуса 5,4 см.
Исходным данным в этой задаче является радиус: r = 5,4 см. Результатом работы программы должны быть величины c — длина окружности и s — площадь круга. c, s и r — величины вещественного типа.
Эта программа верна и решает поставленную задачу. Запустив её на выполнение, вы получите следующий результат:
Первая программа
И всё-таки составленная нами программа имеет существенный недостаток: она находит длину окружности и площадь круга для единственного значения радиуса (5,4 см).
Для того чтобы вычислить длину окружности и площадь круга для другого значения радиуса, потребуется вносить изменения непосредственно в текст программы, а именно изменять оператор присваивания. Внесение изменений в существующую программу, по меньшей мере, не всегда удобно (например, когда программа большая и операторов присваивания много). Ниже вы познакомитесь с оператором, позволяющим вводить исходные данные в процессе работы программы, не прибегая к изменению текста программы.
Ввод данных с клавиатуры
Для ввода в оперативную память значений переменных используется оператор ввода read :
Первое введённое пользователем значение переменной помещается в ячейку памяти, имя которой расположено первым в списке ввода, и т.д. Поэтому типы вводимых значений (входного потока) должны соответствовать типам переменных, указанных в разделе описания переменных.
var i, j: integer; x: real; a: char;
Присвоим переменным i, j, x, а значения 1, 0, 2.5 и ‘А’. Для этого воспользуемся оператором
и организуем входной поток одним из следующих способов:
Пример ввода
Здесь мы не только использовали различные разделители (пробел, запятая), но и представляли входной поток в виде одной, двух и четырёх строк.
Результат работы усовершенствованной программы
Теперь наша программа может вычислить длину окружности и площадь круга для любого значения r. Иначе говоря, она решает не единичную задачу, а целый класс задач. Кроме того, в программе понятно и удобно организован ввод исходных данных и вывод получаемых результатов. Это обеспечивает дружественность пользовательского интерфейса.
Ввод исходных данных и вывод результатов должны быть организованы понятно и удобно; это обеспечивает дружественность пользовательского интерфейса.
Организация ввода и вывода данных
Организация ввода и вывода данных
Вывод данных
В предыдущей теме мы познакомились со структурой программы на языке Python, научились описывать данные, рассмотрели оператор присваивания. Этого достаточно для того, чтобы записать программу преобразования данных. Но результат этих преобразований нам виден не будет.
Для вывода данных из оперативной памяти на экран монитора используется оператор вывода print :
Здесь в круглых скобках помещается список вывода — список выражений, значения которых выводятся на экран. Это могут быть числовые, символьные и логические выражения, в том числе переменные и константы.
Произвольный набор символов, заключённый в апострофы, считается строковой константой. Строковая константа может содержать любые символы, набираемые на клавиатуре.
Оператор print (‘s= ‘, s) выполняется так:
Если значение переменной s равно 15, и она имеет целочисленный тип, то на экране появится: s=15
| Вариант организации вывода | Оператор вывода | Результат |
|---|---|---|
| По умолчанию | print (1, 20, 300) | 1 20 300 |
| Убрать разделители — пробелы | print (1, 20, 300, sep=») | 120300 |
| Добавить другой разделитель | print (1, 20, 300, sep=’,’) | 1,20,300 |
Формат вывода — это указываемое после двоеточия целое число, определяющее, сколько позиций на экране должна занимать выводимая величина. Если цифр в числе меньше, чем зарезервированных под него позиций на экране, то свободные позиции дополняются пробелами слева от числа. Если указанное в формате вывода после двоеточия число меньше, чем необходимо, то оно автоматически будет увеличено до минимально необходимого.
| Оператор вывода | Результат выполнения оператора |
|---|---|
| a = 4 print (‘a=’, ‘<:5d><:5d>‘.format(a, a * a)) | a= ◦◦◦◦4◦◦◦16 |
| a = 1 / 3 b = 1 / 9 print («<:7.3f><:7.3f>«.format(a, b)) | ◦◦0.333◦◦0.111 |
| a = 1 / 3 b = 1 / 9 print (‘<:10.3e><:10.3e>‘.format(a, b)) | ◦3.333e-0.1◦◦1.111e-01 |
Первая программа на языке Python
Пользуясь рассмотренными операторами, составим программу, вычисляющую длину окружности и площадь круга радиуса 5,4 см.
Исходным данным в этой задаче является радиус: r = 5,4 см. Результатом работы программы должны быть величины c — длина окружности и s — площадь круга. c, s и r — величины вещественного типа.
Эта программа верна и решает поставленную задачу. Запустив её на выполнение, вы получите следующий результат:
Первая программа
Первая программа с выводом по формату
И всё-таки составленная нами программа имеет существенный недостаток: она находит длину окружности и площадь круга для единственного значения радиуса (5,4 см).
Для того чтобы вычислить длину окружности и площадь круга для другого значения радиуса, потребуется вносить изменения непосредственно в текст программы, а именно изменять оператор присваивания. Внесение изменений в существующую программу, по меньшей мере, не всегда удобно (например, когда программа большая и операторов присваивания много). Ниже вы познакомитесь с оператором, позволяющим вводить исходные данные в процессе работы программы, не прибегая к изменению текста программы.
Ввод данных с клавиатуры
Есть задачи, в которых вводимые данные заданы в одной строке, например, 10 20. Чтобы была возможность работать с такими данными, их надо разделить.
Для этого нужно применить следующий синтаксис:
Здесь есть правило: количество данных должно соответствовать количеству переменных. В примере выше в одной строке передаются два целых числа, разделенных пробелом. Соответственно, нужно эти данные передать также двум переменным. Осталось не забыть, что определенные таким образом переменные имеют строковый тип. Для арифметического сложения их нужно привести к типу целого числа.
Также добавим, что если в одной строке введены данные одного единственного типа (только целые числа, вещественные числа или строки), то определение переменных и задание им одного и того же типа можно выполнить одной строкой кода, используя следующий синтаксис:
При вызове функции input в скобках можно записать сообщение-подсказку:
Результат работы усовершенствованной программы
Теперь наша программа может вычислить длину окружности и площадь круга для любого значения r. Иначе говоря, она решает не единичную задачу, а целый класс задач. Кроме того, в программе понятно и удобно организован ввод исходных данных и вывод получаемых результатов. Это обеспечивает дружественность пользовательского интерфейса.
Ввод исходных данных и вывод результатов должны быть организованы понятно и удобно; это обеспечивает дружественность пользовательского интерфейса.







