ЦИКЛИЧЕСКИЕ АЛГОРИТМЫ

Методические указания

 

Часть 3

 

 

Нижнекамск

НХТИ КНИТУ


Составители: ст. преп. Т.А. Хрузина

к.п.н., доцент В.А. Садыкова

 

Алгоритмический язык QBasic. Часть III. Циклические алгоритмы: Метод. указания для самостоятельной работы студентов / НХТИ КНИТУ; Сост.: Т.А. Хрузина, В.А. Садыкова. Нижнекамск, 2012. 74 с.

 

Подготовлены на кафедре информационных систем и технологий Нижнекамского химико–технологического института Казанского национального исследовательского технологического университета.

В пособии дано изложение основных теоретических положений языка QBasic по циклическим алгоритмам, операторам организации циклов. Содержат методические указания к разработке алгоритмов и практическому программированию на языке Qbasic, которые могут быть использованы для подготовки к выполнению контрольных, лабораторных и практических заданий по дисциплине «Информатика».

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

Печатаются по решению методической комиссии факультета Управления и Автоматизации Нижнекамского химико–технологического института Казанского национального исследовательского технологического университета.

Рецензенты: к. т. н., доц. Н.В.Лежнева

к. ф.-м.н., доц. Н.Н.Саримов


1. Понятие циклического алгоритма

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

Любой алгоритм циклической структуры в общем случае предусматривает:

1) задание начальных значений переменным, изменяющимся в цикле;

2) выполнение действий, выполняемых непосредственно в цикле;

3) изменение значений переменных цикла по некоторому закону, т. е. подготовка исходной информации для нового выполнения тела цикла;

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

В языке программирования Qbasic имеется стандартный набор из трех разновидностей цикла – цикл с параметром, цикл с предусловием («До») и цикл с постусловием («После»):

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

В QBASIC существуют три типа операторов организации циклов: FOR...NEXT; DO...LOOP; WHILE...WEND. Рассмотрим подробнее каждый из них.

 

2. Организация циклов с параметром

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

Общий вид оператора:

 

FOR параметр = nz TO kz [STEP h]

[блок_операторов]

[EXIT FOR]

NEXT параметр

где

параметр – числовая переменная, используемая как счетчик цикла,

nz и kz – начальное и конечное значение счетчика цикла,

h – приращение счетчика при каждом шаге цикла (по умолчанию h=1),

EXIT FOR – позволяет выйти из цикла преждевременно, до его окончания.

Работает данный оператор следующим образом: для всех значений параметра (FOR параметр), начиная с начального значения nz и до (TO) конечного значения kz с шагом (STEP) равным h, выполняется блок_операторов. Ключевое слово NEXT меняет значение параметра цикла следующим образом:

параметр = параметр + h

Рассмотрим некоторые особенности выполнения этого цикла:

 

1) тело цикла выполняется только в том случае, если:

· nz+hkz;

· kz<nz и h < 0;

2) тело цикла выполняется только один раз, если kz=nz;

3) произойдет зацикливание, если h=0;

Существует множество задач, в которых требуется использование оператора FOR…NEXT: табулирование функции, нахождение наибольшего и наименьшего значения функции, вычисление конечной суммы, вычисление конечного произведения и др. Рассмотрим некоторые задачи более подробно.