9793

Ввод-вывод данных

Контрольная

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

Ввод-вывод данных Вывод данных: WRITE(x1,x2,x3) WRITELN(x1,x2,x3) Вывод завершается переводом курсора на новую строку. x1,x2,x3 - список выражений. Каждое выражение может иметь один из трех видов: e e:m e:m:n...

Русский

2013-03-17

44 KB

2 чел.

Ввод-вывод данных

Вывод данных:

WRITE(x1,x2,…,x3);

WRITELN(x1,x2,…,x3); Вывод завершается переводом курсора на новую строку.

x1,x2,…,x3 – список выражений.

Каждое выражение может иметь один из трех видов:

 e  e:m   e:m:n,

где e – выражение (допустимые типы: символьный, строковый, целочисленный, вещественный, логический),  m – целое число ( >0 ), задающее минимальную ширину поля для вывода значение; n – число десятичных знаков в представлении вещественного значения с фиксированной точкой.

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

String[X]; { X – максимальная длина строки (1-255) }

Пример:

Var A : string[8];

begin

   A:=’Пример’;

end.

Примеры:

A:=348.45678; WriteLN(A:6);  □3.5E+02

A:=348.45678; WriteLN(A:10);  □3.485E+02

A:=348.45678; WriteLN(A:15);  □3.48456780E+02

A:=348.45678; WriteLN(A:6:2);  348.46

A:=348.45678; WriteLN(A:3:2);  348.46

A:=348.45678; WriteLN(A:10:2);  □□□□348.46

C:=’A’;    WriteLN(C:6);   □□□□□A

C:=’A’;    WriteLN(C:6:2);

A:=348;   WriteLN(A:6);  □□□348

A:=348;   WriteLN(A:6:2);  

S:=’Пример’;  WriteLN(S:4);  Пример

S:=’Пример’;  WriteLN(S:10);  □□□□Пример

Ввод данных:

READ(x1,x2,…,x3);

READLN(x1,x2,…,x3);  Ввод завершается переводом курсора на новую строку.

x1,x2,…,x3 – список переменных (тип: символьный, целочисленный, вещественный, строковый).

При вводе должны соблюдаться следующие соглашения:

  •  Тип вводимого данного должен совпадать с типом переменной указанной в качестве параметра процедуры read;
  •  Если указано несколько параметров, то при вводе фактические данные нужно разделять пробелами.

==== ==== ==== ==== ==== ==== ==== ====

Ограниченные типы

Самый простой способ создания нового типа – это ограничение уже существующего путем задания минимального и максимального значений диапазона, например:

1..10

-100..100

’a’.. ’z’

Допускается создание ограниченных типов только из дискретных типов (т.е. из всех скалярных кроме вещественных). Ограниченный тип наследует все свойства базового типа (в частности, набор операций).

Использование ограниченного типа повышает наглядность программы и позволяет более надежно контролировать ошибочные выходы значение за пределы заданного диапазона (как при трансляции, так и при исполнении программы).

Перечислимые типы

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

Пример: программа управляющая работой уличного светофора.

Использование 1,2,3 не имеет прямого отношения к решаемой задаче и, следовательно, усложняет программу и затемняет её смысл. Наиболее естественно использование перечислимого типа:

(  Red, Yellow, Green )

( Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)

( On, Off )

( Left, Right, Up, Down )

Допускается образование ограниченного типа из перечислимого.

Например:

Left .. Up

Jun .. Aug

Идентификаторы, используемые в перечислимом типе должны быть уникальны в пределах блока (т.е., недопустимо повторное использование идентификаторов). Например:

type

Month1 = ( Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);

Month2 = ( Dec, Jan, Feb);

==== ==== ==== ==== ==== ==== ==== ====

Описание переменных

Описание переменных начинается со служебного слова var, после которого идет само определение переменных.

Определение переменной должно содержать два элемента: имя переменной и её тип. Пример:

Var

a : integer;

index : 0 .. 5;

sinus : real;

Semaphore : ( Opened, Closed );

 Возможно определение нескольких переменных одного типа. Например,

Var

x,y,z : real;

index1, index2 : 0 .. 5;

Color1, Color2 : ( White, Red, Green );

Описание констант

Описание констант начинается со служебного слова const, после которого располагается последовательность определений констант. В отличие от переменной (которая может менять своё значение во время выполнения программы, значение константы определяется один раз до начала выполнения программы и остается неизменным до конца работы программы.

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

Кроме того, если некоторые важные для программы значения обозначены идентификаторами (например, границы массивов, показатели точности), то при необходимости их легко изменить, исправив описание соответствующих констант. В противном случае эти значение будут «растворены» в тексте программы и придется просматривать её целиком, чтобы провести нужные изменения..

Пример:

Const

One = 1;

HighLimit = 1000;

LowLimit = - HighLimit;

Pi = 3.1415926;

Separator = ‘****************’;

Обратите внимание, что в определениях констант не указывается тип значения. Тип определяется исходя из записи константы.

Константы могут быть использованы во всех конструкциях, где может быть использовано их значение. (константа это синоним значения). Естественно недопустимо изменение значения константы. Например,

 HighLimit = (x+y)*2; { недопустимо, как недопустимо следующее}

1000 = (x+y)*2;

Значение константы при её описании может быть константное выражение. Операндами этого выражения могут быть числа, строки и идентификаторы констант. Кроме того, возможно использование некоторых стандартных функций, а именно:

Abs Chr Hi  Length Lo Odd Ord

Pred Ptr Round SizeOf Succ Swap Trunc

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

Const

Min = 10;

Max = 100;

Center = (Max-Min) div 2;

Message = ‘Out of memory’;

ErrorTxt = ‘Error:’ + Message + ‘.’;

ErrorPos = 80 – Length(ErrorTxt) div 2;

Ln10 = 2.302585092994095684;

Ln10R = 1/Ln10;


 

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

63391. Частотное объединение и разделение каналов 308.01 KB
  Формирование группового тракта системы с ЧРК При частотном разделении каналов для передачи данных различных источников сообщений используются определенные поддиапазоны частот.
63392. Экономика как система общественных отношений. Типы экономических систем, способы классификации, сущность, значение в развитии общественного хозяйства 63 KB
  Правоотношения собственности. Теория прав собственности. Экономико-правовые и организационно-экономические отношения собственности. Отношения собственности в системе экономических отношений.
63394. Учение и биосфере и биосферно-ноосферная концепция В.И. Вернадского. Формирование концепции биосферы. Концепция живого вещества. Концепция антропогенного воздействия как мощного геологического и геохимического фактора 205.5 KB
  Первоначально под всеми этими терминами подразумевалась только совокупность живых организмов, обитающих на нашей планете, хотя иногда и указывалась их связь с географическими, геологическими и космическими процессами, но при этом скорее обращалось внимание на зависимость живой природы от сил и веществ неорганической природы.
63395. Оптическое мультиплексирование с разделением по длине волны 525.15 KB
  Различия между ними не сводятся к тому, что в OFDM-системах используются оптические, а не электрические сигналы. При обычном частотном мультиплексировании применяется механизм амплитудной модуляции с одной боковой...
63398. Управление процессами разработки нефтяных залежей на упругом режиме 1.53 MB
  Анализ результатов экспериментальных исследований по определению изменения эквивалентных осредненных пористости и проницаемости что особенно характерно для карбонатных пород показывает...
63399. СИСТЕМЫ УПРАВЛЕНИЯ БД: ОБЩИЕ СВЕДЕНИЯ 683 KB
  Общие сведения о СУБД Место БД при различной архитектуре вычислительной системы Модели данных Язык описания данных Язык манипулирования данными для реляционной модели SQL Общие сведения о СУБД Первыми СУБД в России начали пользоваться в конце семидесятых годов.