Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pascal - лаб. по изучению.doc
Скачиваний:
6
Добавлен:
04.11.2018
Размер:
992.77 Кб
Скачать

5.3 Цикл с предпроверкой условия

Оператор цикла с предпроверкой условия WhileDo схематично представлен в виде блок-схемы на рис.2 и имеет следующий формат:

While <условие> Do <оператор>

Здесь While, Do – зарезервированные слова («Пока [выполняется условие]», «делать»);

<условие> - выражение логического типа;

<оператор> - произвольный оператор, составляющий тело цикла (включая случай расширенного оператора).

Если условие имеет значение “Истинно” (True), то выполняется <оператор>, после чего проверка условия повторяется. Если условие имеет значение “Ложь” (False), то оператор While прекращает свою работу. 

Рис.2 Блок-схема цикла с предпроверкой условия

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

Пример. Дан бесконечный ряд вида

Найти сумму данного бесконечного ряда с заданной точностью e=0.01, т.е. продолжать процесс суммирования до тех пор, пока модуль разности между суммами для k-го и (k+1)-го шага не станет меньше e.

5.4 Цикл с постпроверкой условия

Оператор цикла с постпроверкой условия имеет следующий формат:

Repeat <тело цикла> Until <условие>

Здесь Repeat, Until – зарезервированные слова («Повторять», «пока не [выполнится условие]»);

<тело цикла> - произвольная последовательность операторов;

<условие> - выражение логического типа.

Операторы тела цикла всегда выполняются хотя бы один раз, после чего вычисляется значение <условие>: если его значение ложно (FALSE), операторы тела цикла повторяются, в противном случае оператор Repeat завершает свою работу.

Блок-схема данного оператора представлена на рис. 3.

Рис. 3 Блок-схема цикла с постпроверкой условия

Пример. Дано натуральное число N>10. Найти первую цифру даного числа.

6 Методические указания к выполнению работы

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

Например, в случае суммы ряда вида

cos(x)+cos(2x)+cos(3x)+…+cos(7x)

общий вид слагаемого с номером k будет иметь вид cos(k*x), где k изменяется от 1 до 7.

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

Фрагмент программы нахождения указанной выше суммы ряда с помощью оператора FOR может иметь, например следующий вид:

s:=0;

for k:=1 to 7 do s:=s+cos(k*x);

writeln(‘сумма =’, s);

end.

С помощью оператора While:

s:=0;

k:=1;

while k<=7 do

begin

s:=s+cos(k*x);

k:=k+1;

end;

writeln(‘сумма =’, s);

end.

С помощью оператора Repeat:

s:=0;

k:=1;

repeat

s:=s+cos(k*x);

k:=k+1;

until k>7;

writeln(‘сумма =’, s);

end.

 

 

7 Контрольные вопросы

7.1  Что называется циклом, телом цикла?

7.2  Какие операторы цикла языка Pascal Вы знаете?

7.3  Приведите известные Вам форматы оператора For.

7.4  С каким шагом может изменяться параметр оператора For?

7.5  Как можно рассчитать число шагов в операторе For?

7.6  Поясните отличия в операторах цикла с предпроверкой и постпроверкой условий.

7.7  Какой формат имеет оператор While?

7.8  Приведите пример, когда тело цикла в операторе While не выполняется ни одного раза.

7.9  Приведите формат оператора Repeat.

7.10       Поясните, в каком случае прекращаются повторения в операторе Repeat.

БИБЛИОГРАФИЯ

1. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс. – М.: Нолидж. – 2000. – 576 с.

2. Зуев Е.А. Система программирования Turbo Pascal. – М.: Радио и связь. – 1992. – 288 с.

3. Рубенкинг Н. Турбо Паскаль для Windows.– М.: Мир. - 1994. – 535 с.

4. Информатика. Базовый курс. Учебник для вузов/Под ред. С.В.Симонович – СПб: Питер.- 2000. – С.560 - 611.

5.   Приложение А

Варианты заданий для выполнения

 

Методические указания к лабораторной работе

PASCAL

Части 4 и 5

Использование одномерных и двумерных массивов

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]