Студопедия — Теоретические сведения. Цель работы: закрепить практические навыки работы с системой TURBO Pascal, овладеть практическими навыками разработки
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Теоретические сведения. Цель работы: закрепить практические навыки работы с системой TURBO Pascal, овладеть практическими навыками разработки






Лабораторная работа № 4

ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ЦИКЛИЧЕСКОЙ СТРУКТУРЫ

Цель работы: закрепить практические навыки работы с системой TURBO Pascal, овладеть практическими навыками разработки, программирования циклических процессов, познакомиться с диагностическими сообщениями компилятора об ошибках при выполнении программ, содержащих операторы цикла While, Repeat и For.

Теоретические сведения

Операторы цикла служат для того, чтобы выполнять входящие в их состав операторы (так называемые операторы тела цикла) несколько раз (в частном случае - один раз или ни разу). В языке Pascal имеется три вида операторов цикла: While, Repeat и For.

1. Оператор цикла While.

Его синтаксис:

While A do ST;

где: 1) A - булевское выражение;

2) ST - оператор (возможно составной).

Значение выражения A вычисляется перед каждым выполнением оператора ST, поэтому цикл While называют еще циклом с предусловием.

Если значение A есть TRUE, то оператор ST выполняется и управление передается на вычисление значения выражения A; если значение выражения A есть FALSE, то оператор ST не выполняется и происходит выход из цикла.

Замечания:

1. если первоначальное значение выражения A - FALSE, то оператор ST не будет выполнен ни разу;

2. в операторе цикла While точка с запятой никогда не ставится после зарезервированного слова do;

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

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

2. Оператор цикла Repeat.

Цикл Repeat (цикл с постусловием), как правило, используется в тех случаях, когда заранее неизвестно количество повторений операторов тела цикла.

Синтаксис оператора цикла Repeat:

Repeat

ST

until A;

где: 1) ST - оператор (возможно составной);

2) А - булевское выражение.

"Работает" оператор так: выполняются операторы ST, вычисляется значение выражения А; если его значение - FALSE, то вновь выполняются операторы ST, если значение выражения А - TRUE, то цикл заканчивается. Если же значение выражения А есть TRUE с самого начала, то операторы ST выполняются лишь один раз. Если выражение А никогда не принимает значение TRUE, то группа операторов ST выполняется бесконечное число раз, то происходит " зацикливание ".

Следует отметить, что нижняя граница операторов циклической части четко обозначена словом until, поэтому нет необходимости заключать операторы циклической части в операторные скобки begin и end.

3. Оператор цикла For.

Оператор цикла For служит для организации цикла с параметром и используется в тех случаях, когда заранее известно, сколько раз должна повторяться циклическая часть программы. Синтаксис оператора For по возрастающим значениям параметра i:

For i:=N1 to N2 do ST;

где: 1) i - переменная (параметр) цикла;

2) N1- начальное значение параметра цикла, а N2- конечное;

3) ST - оператор (возможно составной).

Переменные i, N1, N2 должны быть одного и того же скалярного типа, но не типа Real, и значение N2 должно быть больше, чем значение N1. Переменная i принимает последовательные значения данного типа от N1 до N2 . В частном случае, когда N1 и N2 - целые числа, а i - переменная типа Integer или Byte, то шаг всегда равен единице.

Например, если

For i:=1 to 20 do A:=A+1,

то для i=1,2,3,...,20 будет выполняться оператор А:=А+1.

Если же N1 и N2 символьного типа и имеют значения, например, 'A' и 'Z' соответственно, то переменная i принимает последовательные значения в порядке букв алфавита: 'А','В','С',...,'Z'.

Отметим, что имеется возможность организовать цикл по убывающим значениям параметра i. Для этого используется зарезервированное слово downto.

Синтаксис оператора For по убывающим значениям параметра i:

For i:= N2 downto N1 do ST;

где: 1) i - переменная (параметр) цикла;

2) N2 - начальное значение параметра цикла, а N1 - конечное;

3) ST - оператор (возможно составной).

В этом случае параметр i принимает последовательные убывающие значения данного типа от N2 до N1 Например, если

For i:=20 downto 1 do A:=A+1,

то для i=20,19,18,...,1 будет выполняться оператор А:=А+1.

4. Вложенные циклы.

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

Правила организации вложенных циклов:

· Все правила присущие простому циклу должны соблюдаться;

· Имена параметров для вложенных циклов должны быть различны;

· Внутренний цикл должен полностью входить во внешний

 







Дата добавления: 2015-08-12; просмотров: 373. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Менадиона натрия бисульфит (Викасол) Групповая принадлежность •Синтетический аналог витамина K, жирорастворимый, коагулянт...

Способы тактических действий при проведении специальных операций Специальные операции проводятся с применением следующих основных тактических способов действий: охрана...

Искусство подбора персонала. Как оценить человека за час Искусство подбора персонала. Как оценить человека за час...

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

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия