Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
21.02.2016
Размер:
221.18 Кб
Скачать
  1. Операторы цикла

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

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

Кнопка - создает шаблон для записи оператора цикла в виде:

В шаблоне оператора for три метки ввода. Две верхних метки, соединённых символом принадлежности, предназначены для определения переменной, по которой организуется цикл (переменная цикла). В левой метке задаётся её имя , а в правой – значения в виде ранжированной переменной, вектора или совокупности ранжированных переменных и (или) векторов, разделённых символом запятая.

Нижняя метка предназначена для записи тела цикла. Если тело цикла содержит несколько выражений, то для их ввода следует создать подблок с помощью кнопки . Количество выполнений тела цикла зависит от количества значений переменной цикла, заданной в оператореfor.

Примеры задания значений переменной цикла.

На рис. 5 приведен листинг с примерами программ вычисления суммы значений х (переменной цикла), заданной разными способами.

Рис. 5. Вычисление суммы значений переменной х, заданной разными способами. а) в виде ранжированной переменной; б) в виде вектора; в) в виде совокупности ряда значений и вектора.

Цикл, представленный на рис. 5,а выполняется 5 раз. Слагаемыми являются значения из диапазона [1, 5] с шагом 1: 1, 2, 3, 4 и 5.

Цикл, представленный на рис. 5,б выполняется 4 раза. Слагаемыми являются элементы вектора: 3, 5, 6 и 10.

Цикл, представленный на рис. 5,в выполняется 5 раз. Слагаемыми являются отдельные значения - 10, 20 и элементы вектора - 2, 4 и 8.

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

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

Кнопка - создает шаблон для записи оператора цикла в виде:

Шаблон оператора while содержит две метки ввода. В метке справа от оператора while записывается условие продолжения цикла в виде логического выражения. В нижнюю метку вводится выражение – тело цикла. Если тело цикла содержит несколько выражений, то для их ввода следует создать подблок с помощью кнопки .Обратите внимание: тело цикла будет выполняться пока условие, записанное в операторе while истинно.

Пример. Вычислить сумму чисел от 1 до 5.

Рис. 6. Вычисление суммы чисел от 1 до 5.


На рис. 6 приведен листинг с программой вычисления суммы чисел из диапазона [1, 5] с шагом 1. Здесь х – переменная цикла. Справа показаны четыре шага, присущие циклическому вычислительному процессу цикл "пока".

  1. Программирование задач циклической структуры

Рассмотрим на примере основные этапы решения задач циклической структуры.

Пример. Составить функцию пользователя для вычисления длины окружности и площади круга при значениях радиуса из заданного интервала [Rn, Rк] с постоянным шагом изменения. Результаты сформировать в виде матрицы с тремя столбцами. В первый столбец вывести значения радиуса. Во второй и третий столбцы вывести, соответствующие радиусу, значения длины окружности и площади круга.

Введем обозначения:

R – радиус круга; Rn – начальное значение радиуса; Rк – конечное значение; R – шаг изменения; L –длина окружности; S – площадь круга.

I Математическое описание задачи

Дано: Rn, Rк, R.

Основные зависимости, необходимые для решения задачи:

L=2π R; (1)

S=π R2;

Ограничения: Зависимости (1) и (2) выполняются для значений R[Rn, Rк] c шагом R.

Найти: длину окружности L и площадь круга S для всех значений R[Rn, Rк] c шагом R.

II Схема алгоритма приведена на рис. 7.

В строке матрицы с индексом i=0

формируются заголовки столбцов

I-й шаг. Переменной цикла присваивается начальное значение

II -й шаг. Проверка условия выполнения цикла

III -й шаг. Тело цикла. Вычисление и формирование матрицы результатов. Перед записью результатов индекс строки матрицы каждый раз увеличивается на единицу.

IV -й шаг. Изменение переменной цикла на величину шага

Рис. 7. Пример схемы алгоритма.

III Определение функции пользователя для нахождения длины окружности L и площади круга S для всех значений R[Rn, Rк] c шагом R представлено в листинге 1. Здесь в операторе присвоения задается функция пользователя с именем Fun_RLS и списком формальных параметров Rn, Rк и R. Для описания циклических вычислений используется оператор while.

Листинг 1 с текстом программы.

Соседние файлы в папке CVP