Лекции.Орг


Поиск:




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




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

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

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

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

 

 

Оператор цикла 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-переменной

 





Поделиться с друзьями:


Дата добавления: 2015-10-27; Мы поможем в написании ваших работ!; просмотров: 436 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Наука — это организованные знания, мудрость — это организованная жизнь. © Иммануил Кант
==> читать все изречения...

802 - | 693 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.