Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект_лекций.doc
Скачиваний:
18
Добавлен:
26.04.2019
Размер:
1.11 Mб
Скачать

6.8. Метки операторов. Оператор безусловного перехода

Любому исполнимому оператору языка Pascal может быть присвоено уникальное символьное имя - метка. Идентификаторы, используемые в качестве меток, описываются специальным оператором:

LABEL И1, И2, . . . Иn;

Ключевое Перечень

слово имен

Пример:

Label m1, m2, mm;

Звуковая транскрипция: запомни: идентификаторы m1, m2, mm будут использованы в программе как имена операторов!

Правило: имя (метка) присваиваемое оператору, записывается перед оператором и отделяется от него символом-разделителем – двоеточием.

Пример: m1: a:= sqrt(a*a + 3);

Звуковая транскрипция: присвой имя m1 указанному за ним оператору!

Синтаксис оператора принудительного изменения активной позиции программы: GOTO Меt;

где GOTO – ключевое слово, за которым следует пробел-разделитель, Меt - имя (метка) оператора.

Звуковая транскрипция: продолжать выполнение программы начиная с оператора, помеченного именем Меt!

6.9. Циклические вычисления. Операторы зацикливания

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

Опр. Циклическими вычислениями (циклами) называются многократные повторения расчетов по одной и той же последовательности операторов.

Опр. Тело цикла – последовательность операторов (фрагмент текста программы) выполняемый циклически.

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

      1. Организация циклических вычислений операторами if then goto

Опр. Счетчиком цикла называется рабочая переменная, в которой содержится (вычисляется) порядковый номер повторения некоего фрагмента программы.

Счетчик цикла – всегда целочисленная переменная, т.к. команда «повторить некое действие три с половиной раза» непонятна даже человеку.

Для примера, рассмотрим задачу извлечения «х» - квадратного корня из положительного числа «а» по методу Герона Александрийского (он же метод Ньютона для решения уравнения х2).

Рекурентная формула Герона

xi+1 = 0.5(xi + a / x i) (1)

позволяет вычислить xi+1 - очередное (уточненное) значение искомого корня по известному предыдущему значению xi. В качестве самого первого (исходного) значения x1 можно взять любое число.

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

Пусть а=4 и x1=1, тогда: x2 = 0.5(1+4/1) = 2.5

x3 = 0.5(2.5+4/2.5) = 2.05

x4 = 0.5(2.05+4/2.05) = 2.001

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

x:=0.5*(x + a / x); (2)

Семантика (звуковая транскрипция) этого оператора: выполни вычисления указанные в правой части оператора, и помести результат именно в переменную «х», где ранее находилось предыдущее значение искомого «х».