Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Pascal.doc
Скачиваний:
16
Добавлен:
06.09.2019
Размер:
3.69 Mб
Скачать

Оператор цикла с постусловием. (Работает, пока ложно условие)

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

REPEAT

операторы цикла

UNTIL условие

Например, цикл вида

repeat

Proc1(x,y+i);

i:=i-1;

until i=0

будет выполняться до тех пор, пока i не станет равным нулю.

Обратите внимание, что синтаксис while-цикла допускает в теле цикла единичный или составной оператор, в то время как repeat-цикл может содержать последовательность операторов (для множества операторов не надо использовать операторные скобки).

Приведем еще два примера repeat-циклов:

repeat

K:=I mod J; I:=J; J:=K

until J=0;

repeat

Write(“Введите целое число: “);

Readln(i); Process(i)

until (i<0) and (i>9)

Пример 1.

PROGRAM poisk;

var i,n:integer; s:real;

BEGIN

s:=0; i:=1;

repeat

s:=s+1/i;

i:=i+1;

until s>5;

writeln (S);

END.

ЗАДАНИЕ:

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

  2. Составить программу вычисления количества первых четных чисел, в сумме дающих 56.

  3. Найти сумму ряда с точностью до 0,001. (Точность вычисления означает, что разность между двумя соседними слагаемыми не больше заданного числа. В нашем случае не превышает 0,001).

  4. Написать программу вычисления факториала введенного числа. (Факториал – последовательное произведение от 1 до данного числа. Обозначается восклицательным знаком: 5!=1*2*3*4*5)

  5. Население города ежегодно увеличивается на 1/40 населения состава жителей. Через сколько лет население города утроится?

  6. Мяч упал с высоты H=243 см и, ударяясь о землю, отскакивает вновь, поднимаясь каждый раз на 2/3 высоты, с которой он упал. Определить, через сколько ударов мяч поднимется на высоту Р=32 см.

Нестандартные типы данных: перечисляемый и ограниченный тип

Вспомним структуру данных в Паскале (рисунок).

Кроме стандартных типов разрешено введение новых типов, характеристики которых можно разрабатывать самостоятельно. Зачем? – может возникнуть вопрос, если стандартных типов вполне достаточно для работы.

Вообще все, что ни делается в синтаксисе и семантике языка - все делается для облегчения использования этого языка, для облегчения работы программиста. Типизация данных значительно уменьшает возможность появления ошибок. Если же ошибки возникают, то компьютер сам их обнаруживает и сообщает об этом. Кроме того, перечисляемые типы значительно облегчают читабельность программы – программа приближается к естесственному языку.

Эти новые типы должны быть описаны в разделе типов. TYPE располагается между CONST и VAR.

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

Объявление перечисляемого типа:

TYPE имя типа=(список констант);

Объявление переменных этого типа: