Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Объявление массива




Лекция 14

END.

Begin

Var

A,B,X,Y: Extended;

Read(A,B,X);

Y:= A*X + B;

Writeln(' A=',A,' B=',B,' X=',X);

Writeln(' Y=',Y);

В данном случае после заголовка программы записан комментарий (так как текст заключен в фигурные скобки). Далее указан раздел переменных (начинается с ключевого слова Var). В разделе операторов сначала осуществляется обращение к процедуре ввода входных данных, затем вычисляется значение У и с помощью процедуры Writeln осуществляется вывод исходных данных и результата на экран.

4.6.9. Данные типа массив.

До сих пор мы рассматривали простые типы данных. Значением любого из этих типов является отдельное данное (тривиальная структура). Кроме простых типов в ТР имеются еще и производные типы. Каждое значение производного типа представляет собой нетривиальную структуру, то есть это значение имеет более чем одну компоненту. Типичным представителем производных типов является массив.

Массив - это упорядоченный набор фиксированного количества некоторых значений одного типа В ТР отдельный элемент массива обозначается индексированной переменной вида:

 

имя массива [индекс,индекс,….]

 

в качестве индекса можно использовать константы, переменные и выражения порядкового типа. Пример A[12], A[K], A[N + 1], B[K, 3].

При объявлении массива необходимо указать тип элементов массива и тип индекса. Элементы массива могут быть всех тех типов которые мы рассматривали (Real, Char, Integer, …).

Наиболее часто в качестве типа индекса используется тип диапазон.

Данные типа массив можно объявить двумя способами:

- объявить массив сразу в разделе описания переменных;

- в разделе типов объявить идентификатор типа, а затем использовать его для описания массива в разделе переменных.

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

Форма объявления в этом случае имеет вид:

 

Type идт = Array [диапазон] Of тип элементов массива;

Var список Имен массивов: идт;.

 

Здесь идт - идентификатор типа; Array (массив) и Of (из) – зарезервированные слова

Пример.

Type Rm1 = Array [ 1.. 50 ] Of Integer;

Rm2 = Array [1.. 80, 1.. 5 ] Of Extended;

 

Var Msa, Fm: Rm1;

Rez: Rm2;

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

Пример: Var Msa, Fm: Array [ 1.. 50 ] Of Integer;

 

4.7. Ввод и вывод данных.

 

4.7.1. Ввод данных.

В ТР имеется две возможности для ввода значений данных в память:

- ввод с клавиатуры;

- ввод из внешнего файла.

Ввод с клавиатуры.

В этом случае значения вводимых данных набираются на клавиатуре и сначала заносятся в стандартный входной файл Input. Слово "стандартный" означает, что этот файл определен в компиляторе ТР и программисту нет необходимости беспокоится о его создании и описании. Значения вводимых данных одновременно с занесением в файл Input отображаются на экране монитора. Для занесения значений данных в ОЗУ необходимо нажать клавишу Enter. До тех пор пока клавиша Enter не нажата значения данных можно редактировать.

Достоинством этого способа ввода является простота организации ввода - в программе надо просто указать обращение к процедуре ввода данных.

Недостатки:

- если входных данных много, то слишком утомительно вводить их каждый раз вручную (обычно при многократном решении задачи изменяется мало данных из набора входных данных);

- легко сделать ошибку в отдельном значении (выполнение программы придется повторить);

Ввод из внешнего файла.

Слово "внешний" означает, что этот файл не связан с компилятором ТР и хранится он как самостоятельный файл (с расширением txt) - его можно редактировать в любом текстовом редакторе.

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

Достоинства:

- ввод значений входных данных осуществляется автоматически;

- не требуется каждый раз набирать на клавиатуре весь набор входных данных, достаточно во входном файле заменить значения только изменяемых данных;

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

Недостаток: в программе необходимо предусмотреть средства для связи программы с внешним файлом, операции открытия и закрытия этого файла. Процедуры ввода данных в ТР.

В ТР ввод значений данных осуществляется с помощью процедур:

Read(ФП, Р1, Р2, … Рк);

Readln(ФП, Р1, Р2, … Рк);

где Р1, Р2, … Рк - список имен входных данных;

ФП - файловая переменная (предназначена для организации связи программы с внешним файлом). При вводе с клавиатуры ФП не указывается.

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 298; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.