русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Переменные типы данных в Паскале

     Простой тип  - это тип, который может представлять только одно значение. Кроме стандартных скалярных типов в ТР к простым типам относятся также переменные типы: перечисляемый и диапазон.

Интервальный тип данных

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

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

     Например:

Type
n = 1..100;
Day =1..31;
Month =1..12;
Year =1900..2004;
Letter= ‘A’..’Z;
LP=Fasle..True;
Var 
i, j            : n;
D1, D2     : Day;
M1,  M2   : Month;
G              : 1900..2004;
R, S         : Letter;
L              :LPe;

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

Так как эти типы данных являются порядковыми (наряду с типами: целый, логический символьный) то к ним можно применять также  стандартные функции SUCC, PRED и ORD. 

Применение переменных интервального типа улучшает наглядность программы и повышает ее надежность т.к. в программах осуществляется контроль  выхода значений переменных за пределы указанного диапазона с помощью директивы {$R+}. 

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

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

 1.  Type<имя типа>=(<список констант>);
Var<имя переменной>:<имя типа>;
2.   Var<имя переменной>:(< список констант >);

Например:

Type
MONTH=(JAN, FEB, MAR, APR, MAY, JUN,
JUL, AUG, SEP, OCT, NOV, DEC);
COLOR=( White, Blue, Yellow , Brown, Red, Cyan, Green, Magenta, Black);
(Белый, Синий, Желтый, Коричневый, Красный, Голубой, Зеленый, Фиолетовый, Черный)
Var
M            :MONTH;
CO           :COLOR;

Значения перечисляемого типа упорядочены и изменяются от 0 до 255. Для перечисляемого типа применимы только операции сравнения (=, <, >, <>, <=, >=) они м. б. использованы в логических выражениях..
Для перечисляемого типа применимы следующие стандартные функции:
SUCC(X) –возвращает последующее значение; например: SUCC(AUG)=SEP;
PRED(X) - возвращает предыдущее значение ;                     PRED(AUG)=JUL; 
ORD(X) - возвращает порядковый номер ;                             ORD(AUG)=8.

     Ограничения, связанные с перечислимым типом:

  1. Объектами  перечисляемого типа не м. б. числа, символьные и логические константы.
  2. В различных перечислениях не д. б. одинаковых элементов.
  3. Нельзя переменной одного типа присваивать значения из другого типа.
  4. Нельзя непосредственно вводить и выводить  значения переменных перечислимого типа (можно использовать оператор CASE).

     Пример 10.1.  Составить программу ввода из файла d1.txt и подсчета размера среднемесячной зарплаты.
Файл d1.txt

1231.23  1324.34 1145.54 1376.13 1263.65 1132.54
1143.76 1231.76 1321.76 1243.87 1287.87

Текст программы

Program zpl;
Uses CRT;
Type Month=(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
vec_z=array[Month] of real;
Var
zp         :vec_z;
sz         :real;
i          :Month;
f          :text;
Begin
clrscr;
Assign(f,'d1.txt'); Reset(f);
Writeln('Помесяная зарплата:');
For i:= Jan to Dec do
Begin
Read(f,zp[i]);Write(zp[i]:7:2,' ':3);
End;
sz:=0;
For i:= Jan to Dec do   sz:=sz+zp[i]/12;
Writeln;
Writeln('Результат:');
Writeln('Средняя зарплата составляет:');
Writeln('sz=',sz:8:2);
Close(f);
Readln;
End.

Результат работы программы:

Помесячная зарплата:
1231.23   1324.34   1145.54   1376.13   1263.65   1132.54   1287.43   1143.76
1231.76   1321.76   1243.87   1287.87
Результат:
Средняя зарплата составляет:
sz= 1249.16

Пример 10.2. Составить программу, которая по введенному значению порядкового номера выводит соответствующее значение переменной.

Текст программы

Program pt;
Uses CRT;
Type COLOR=(Red, Green, Yellow);
Var
co         :color;
n          :byte;
Begin
clrscr;
Write('Введите n=>');
Read(n);
Case  n of
0: co:=Red;
1: co:= Green ;
2: co:= Yellow;
End;
Write('Цвет=>');
Case  co of
Red       : Writeln('Red');
Green    : Writeln('Green');
Yellow  : Writeln('Yellow ');
End;
Repeat Until KeyPressed;
End.

 

Результат работы программы:

Введите n=>1

Цвет=>Green

Просмотров: 11645

Вернуться в оглавление:Алгоритмические языки




Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Полезен материал? Поделись:

Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.