50010

Оператор ввода-вывода в Pascal

Лабораторная работа

Информатика, кибернетика и программирование

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

Русский

2014-01-14

75 KB

2 чел.

PAGE  3

Лабораторная работа № 4

Оператор ввода-вывода в Pascal.

Описание некоторых стандартных типов данных и встроенные операции и функции, применимые к ним.

Оператором называют специальную совокупность служебных слов, идентификаторов и специальных знаков, выполняющих определенные действия. Операторы отделяются друг от друга точкой с запятой ";". Операторы Pascal:

Оператор присваивания: (:=). Оператор присваивания служит для присваивания значений переменным, например: x:=1; a:=5. 02; b:= 32*a+Sin(x); S:= 'Иван Иванович';

Составной оператор: Begin <операторы>; End;

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

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

Для выполнения операций ввода-вывода служат четыре оператора:

Read, ReadLn, Write, WriteLn. Оператор чтения (Read) обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой.

Формат: Read (X1, Х2, .. , Хn), где X1, Х2, .. , Хn - переменные допустимых типов данных;

Значения X1, Х2, .. ,  Хn набираются минимум через один пробел на клавиатуре пользователем и высвечиваются на экране. Значения переменных должны вводиться в строгом соответствии с синтаксисом языка. Если в программе имеется несколько операторов Read, данные для них вводятся потоком, т. е. после считывания значений переменных для одного оператора Read данные для следующего оператора Read - набираются на той же строке, что и для предыдущего до окончания строки, затем происходит переход на следующую строку. Оператор чтения ReadLn аналогичен оператору Read, единственное отличие заключается в том, что после считывания последнего в списке значения для одного оператора ReadLn данные для следующего оператора ReadLn будут считываться с начала новой строки.

Оператор записи (Write) производит вывод данных.

Формат: Write (X1, Х2, .. , Хn), где X1, Х2, .. , Хn - выражения типа integer, byte, real, char, Boolean и т.д.

Пример: Write (125); (выражение представлено значением) Write (А+В-С); {выводится результат выражения).

Оператор Write дает возможность выводить значения переменных следующими способами.

1. Вывод десятичного представления величины I начиная с позиции расположения курсора (I):

Значение I

Выражение

Результат

134

Write(I)

134

5671

Write(I)

5671

287

Write(I, I, I)

287287287

2. Вывод десятичного представления величины I в крайние правые позиции поля шириной р (I:р):

Значение I

134

5

Выражение 

Write(I:6)

Write(I:10)

Результат

 ...134

 ………5

312

Write(I+I:7)

....624

Где . – пробел.

3. Вывод десятичного представления величины I в крайние правые позиции поля шириной р и дробной части числа шириной q (I:р:q):

Значение I

Выражение

Результат

511.04

Write(I:8:4)

511.0400

-46.78

Write(I:7:2)

.-46.78

-46.78

Write(I:9:4)

.-46.7800

Оператор записи WriteLn аналогичен оператору Write, но после вывода последнего в списке значения для текущего оператора WriteLn происходит перевод курсора к началу следующей строки. Оператор WriteLn, записанный без параметров, вызывает перевод строки.

При недостатке количества позиций для вывода число или текст выводятся полностью, а формат игнорируется, кроме формата вывода дробной части числа. Если формат вывода не задавать, то значения целых и строковых переменных выводятся полностью, а вещественных – в экспоненциальной форме с количеством цифр, соответствующих типу переменной, например, оператор Writeln('а=', a); выведет на экран надпись: a=5.0200000000E+00.

Стандартные типы данных

К стандартным относятся целочисленные, действительные, логический и другие типы.

Целочисленные типы определяют константы, переменные и функции, значения которых реализуются множеством целых чисел,  допустимых в данной ЭВМ.

Тип

Диапазон значений

Требуемая память

Shortint

-128 .. 127

1 байт

Integer

-32768 .. 32767

2 байта

Longint

-2147483648.. 2147483647    

4 байта

Byte

0 .. 255

1 байт

Word

0 .. 65535

2 байта

Пример описания:

VAR   n1, n2: Integer ; n3, n4 : Word; n5, n5 : Byte;

Над целыми операндами можно выполнять следующие арифметические операции:

сложение, вычитание, умножение, деление, целочисленное деление, получение остатка от деления и др. Знаки этих операций:

  

+ – * / div mod

   

Результат арифметической операции над целыми операндами есть величина целого типа, кроме операции деления /, результат деления всегда имеет вещественный тип. Результат выполнения операции целочисленного деления div целых величин есть целая часть частного. Результат выполнения операции  получения остатка от деления mod – остаток от деления чисел. Например:

  

       17 div 2 = 8,     3 div 5 = 0.

       17 mod 2 = 1,   3 mod 5 = 3.

  

Операции отношения,  примененные к целым операндам, дают результат логического типа TRUE или FALSE (истина или  ложь).

В языке ПАСКАЛЬ имеются следующие операции отношения: равенство =, неравенство <>, больше или равно >=,  меньше или равно <=,  больше >,  меньше < .

К аргументам целого типа применимы следующие стандартные (встроенные) функции, результат выполнения которых имеет целый тип:

  

Abs(X) – абсолютное значение, модуль Х;  Sqr(X) – Х в квадрате; Succ(X) – следующее значение (X+1);   Pred(X) – Х-1.

  

Следующая группа стандартных функций для аргумента целого типа дает вещественный результат:

  

Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X).  

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

Результат выполнения функции проверки целой величины на нечетность Odd(X) имеет значение истина,  если аргумент нечетный,  и значение ложь, если аргумент четный:

  

       X=5    Odd(X)=TRUE ;    X=4    Odd(X)=FALSE.

  

  Для быстрой работы с целыми числами определены процедуры:

   Inc(X) X:=X+1

   Inc(X,N)  X:=X+N

   Dec(X) X:=X-1

   Dec(X,N) X:=X-N

Действительные (вещественные) типы определяет те данные, которые реализуются подмножеством действительных чисел, допустимых в данной ЭВМ.

  

Тип

Диапазон значений

Количество цифр

Требуемая память (байт)

Real

2.9e-39 .. 1.7e+38   (10-39..+38)

11

6

Single

1.5e-45 .. 3.4e+38

7

4

Double

5.0e-324 .. 1.7e+308

15

8

Extended

3.4e-4932 .. 1.1e+4932

19

10

Comp

-9.2e+18 .. 9.2e+18

19

8

Пример описания:

VAR   n1, n2, n3, n4 : Real;

Над вещественными операндами можно выполнять следующие арифметические операции, дающие вещественный результат:

  

   сложение + ,  вычитание ,  умножение * ,  деление / .

  

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

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

К вещественным аргументам применимы функции, дающие вещественный результат:

Abs(X), Sqr(X), Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X), Frac(X), Int(X), Power(x,y).

Функция Power(X,Y) возвращает X в степени Y.

Функция Frac(X) возвращает дробную часть X, функция Int(X) – целую часть X.

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

Стандартные константы

Pi –  тип real – возвращает значение  3.14159265358979.

MaxInt –  тип integer возвращает  максимальное значение типа integer: 2147483647.

MaxReal –  тип real – возвращает максимальное значение типа real: 1.7E308.

MinReal – тип real – возвращает минимальное положительное значение типа real: 4.94065645841247E-324

ЛОГИЧЕСКИЙ тип (Boolean) определяет те данные, которые могут принимать логические значения: False (ложь) или True (истина).

Примеры описания:

VAR

 b1, b2, b3, b4 : boolean;

Примеры присвоения значения:

b1 := True; b2 := False; b3 := not b1;

  К булевским операндам применимы следующие логические операции:

    not     and      or     xor.

   

Логический тип определен таким образом, что FALSE < TRUE. Это позволяет применять к булевским операндам все операции отношения.


 

А также другие работы, которые могут Вас заинтересовать

16831. Организация обработки данных 1.3 MB
  Лекция 4 6. Организация обработки данных Как правило в программах не удается ограничиться операторами присваивания. Для большинства реально используемых алгоритмов характерна широкая разветвленность процесса вычислений. При этом в зависимости от конкретных исходн...
16832. Ввод-вывод данных Основные виды работ с файлами любых типов. Основные понятия. Классификация файлов 179.5 KB
  Лекция 5 Вводвывод данных Основные виды работ с файлами любых типов. Основные понятия. Классификация файлов В системах обработки больших объемов информации данные хранятся не в ОП а во внешней памяти ВП на внешних запоминающих устройствах например на жестком м
16833. Вывод данных в текстовый файл 404 KB
  Лекция 6 Вывод данных в текстовый файл Процедуры Write и Writeln Вывод данных в текстовый файл осуществляется в основном для просмотра и подготовки к печати результатов работы программы. Вывод данных производится с помощью процедур Write и Writeln. С их помощью можно выводить...
16834. Модульное программирование 222.5 KB
  Лекция 7 1. Модульное программирование Основные понятия Принцип модульности оказывает наиболее сильное влияние на дисциплину мышления при решении задач. Он состоит в декомпозиции первоначального задания в связную систему подзадач и является основным методом в н
16835. Компиляция и подключение модулей 294 KB
  Лекция 8 Компиляция и подключение модулей Для того чтобы сформировать модуль библиотеку с подпрограммами можно отладить подпрограммы в составе основной программы а затем перенести их в модуль. Для использования подпрограмм модуля его надо оттранслировать т. е. сф
16836. Распределение оперативной памяти при выполнении программ 756 KB
  Лекция 9 1. Динамические переменные. Основные понятия Распределение оперативной памяти при выполнении программ Адресуемое пространство ОП в ОС MSDOS организовано сегментами: перенумерованными блоками памяти по 64 Кбайта. Причем сегмент может начинаться с любого фи
16837. Массивы указателей 1.37 MB
  6. Массивы указателей С помощью массивов указателей можно формировать большие массивы и коллекции массивов любых типов. Работа с большими массивами Размер одного массива данных должен быть не более 64 Кбайт. Но в реальных задачах могут использоваться массивы требую...
16838. Массивы и многоуровневая косвенная адресация 564 KB
  Лекция 10 5. Массивы и многоуровневая косвенная адресация Многоуровневая косвенная адресация и одномерные арифметические массивы Многоуровневая адресация имеет место при использовании указателей на указатели на массивы. Рассмотрим это на примерах формирования одн
16839. Связанные структуры 682 KB
  Лекция 11 8. Связанные структуры Основные понятия Записи содержащие указатели позволяют формировать в ОП линейные и нелинейные связанные структуры. К линейным связанным структурам относят например стеки очереди и списки. К нелинейным деревья и сети. Эти структур