Принудительно изменять внутри цикла

Посредством оператора присваивания, но

Его можно (и часто весьма удобно)

использовать как простую переменную –

Например, как индекс элемента массива.

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

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

while(выражение)

{ тело цикла }

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

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

Наш пример суммирования девяти членов ряда можно при помощи оператора while записать так:

double s = 0.0;

int k = 1;

while(k<=9)

{

s += 1.0/k;

k++;

}

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

Подобный цикл обычно записывают короче, хотя и менее наглядно:

while(k<=9) s += k++;

Если выражение в заголовке оператора всегда истинно, то получается бесконечный цикл:

while(1)

{.......}

Такая конструкция имеет право на существование и используется довольно часто. Как правило, такой цикл прекращают при выполнении некоторого условия, которое записывается и проверяется внутри тела цикла. Для этой цели используется условный оператор или переключатель.

Запишем наш пример, используя бесконечный цикл:

int k=1;

double s = 0.0;

while(1)

{

s += k++;

if(k > 9) break;

}

Выполнение оператора break приводит к немедленному прекращению цикла и передаче управления на следующий оператор программы, записанный сразу после оператора цикла.

Итак, цикл while завершается в следующих случаях:

- обратилось в нуль выражение, записанное в заголовке;

- в теле цикла встретился оператор break;

- в теле цикла выполнился оператор return.

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

Общий вид такого оператора цикла:

do { тело цикла } while (условие);

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

Прекращение выполнения цикла do...while происходит в случаях, аналогичных циклу while.

ЗАДАНИЕ НА РАБОТУ

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

- сложение

- вычитание

- умножение

- деление

после чего отображает результат.Требуется:

а) составить структурную схему алгоритма;

б) написать консольный вариант программы;

в) написать GUI-вариант программы.

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

СОВЕТЫ.

При составлении структурной схемы алгоритма обдуманно

Выбрать параметр внешнего цикла и обратить особое

Внимание на правильность организации внутренних циклов,

Необходимых для вычисления сумм или произведений.

Для вывода таблицы на экран разумно использовать

визуальный компонент Memo. Его основные методы:

Memo1->Clear() - очистка;

Memo1->Lines->Add(FloatToStr(<double-переменная>)) –

- добавление в новую строку значения

Double-переменной

Принудительно изменять внутри цикла - student2.ru

Принудительно изменять внутри цикла - student2.ru

Наши рекомендации