Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка для ИГА.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.58 Mб
Скачать

Семантика

  1. При первом обращении к оператору for вначале вычисляется выражение s1,s2 и осуществляется присваивание <параметр цикла>:=s1. После этого повторяьтся след. действия.

  2. Проверяется условие <параметр цикла> = s2

  3. Если условие выполняется, то оператор for продолжает работу( выполняется оператор тела цикла), если условие не выполняется, то оператор for завершает свою работу, и управление в программе передается на оператор, следующий за циклом.

  4. Значение управляющей переменной изменяется на 1 или на –1 и далее с п.1

Рассмотрим ограничения, которые накладываются на параметр цикла.

  1. В качестве параметра должна использоваться простая переменная, описанная в текущем блоке.

  2. Управляющая переменная должна иметь дискретный тип(целый, логический, символьный и т.д.)

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

  4. В теле цикла запрещается явное изменение значения управляющей переменной (оператором присваивания).

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

Пример: ус см. выше.

Const l=10; s- сумма, i- вводимое число, c – счетчик чисел

Var s, i, c : integer;

Begin s:=0;

For c : =1 to l do

begin

Writeln(‘ введите’,c,’-ецелое число’);

Readln (i);

S:=s+i;

End;

Writeln(‘s=’, s);

Readln; end.

Вопрос 6 Регулярный тип – массивы в языке Паскаль, примеры описания и использования.

Вопрос 7 Комбинированный тип – запись в языке Паскаль, примеры описания и использования

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

Пример: товар на складе описывается следующими величинами:

Наименование – строка;

Количество - целая величина;

Цена – вещественная величина;

Сертификат качества – логическая величина.

Для записи комбинации объектов, различных типов, а Паскале применяется комбинированный тип данных – запись.

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

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

Формат задания данного типа выглядит так:

Type < имя типа >=record

< имя поля > : < тип > ;

. . . . . . . . . . .

< имя поля > : <тип > ;

end;

var < имя переменной > : < имя типа > ;

Доступ к полям записи осуществляется через переменную типа “запись” и идентификатора поля разделенных точкой. Такая комбинация называется составным именем.

Пример: чтобы получить доступ к полям записи tovar, надо записать

T . name; t . fio ; t . marka ;

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

Var t : array [ 1 . . n ] of tovar ;

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

With < переменная типа записи > do < оператор >;