Главная Случайная страница


Полезное:

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


Категории:

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






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





Синтаксис оператора while:

WHILE условие DO оператор

Слово while читается "вайл", слово do - "ду", вся конструкция переводится так - Пока условие истинно, делай оператор. Например, while a>b do b:=b+1.

Работает оператор while так:

Сначала компьютер проверяет истинность условия, стоящего после слова while. Если условие истинно, то выполняется оператор, стоящий после do. Затем снова проверяется истинность условия и в случае истинности снова выполняется этот оператор. И т.д. Если условие ложно, то оператор while прекращает свою работу и компьютер переходит к выполнению следующего оператора.

Оператор, стоящий после while, вполне может быть составным, поэтому тело цикла у оператора while, так же как и у оператора repeat, может состоять из многих операторов.

Решим при помощи while ту же задачу о печати чисел 3 5 7 9, что в предыдущем параграфе решили с помощью repeat. Для того, чтобы точно определить работу оператора while, приведем программу ее решения параллельно с третьим вариантом программы из 6.2:

3 ВАРИАНТ ВАРИАНТ С WHILE
LABELm1,m2,m3; VAR f: Integer; BEGIN Write('Начало счета '); f:=3; m1: if f<=9 then goto m3 else goto m2; m3: Write(f,' '); f:=f+2; goto m1; m2: Write(' Конец счета') END. VAR f: Integer; BEGIN Write('Начало счета '); f:=3; while f<=9 do begin Write(f,' '); f:=f+2; end; Write(' Конец счета') END.

Как видите, здесь после do стоит составной оператор begin Write(f,' '); f:=f+2; end. Последовательность исполнения операторов и проверки условий в обеих программах совершенно аналогичны.

 

Типичная ошибка начинающих – небрежное обращение со знаками сравнения. Многие не видят большой разницы в том, как записать – while f<=9 или while f<9, а затем, «недополучив» результат, удивляются, почему. И здесь лучшим средством для понимания является отладочный режим. Попробуйте ошибочный вариант последней программы (с while f<9) выполнить в пошаговом режиме с использованием окон пользователя и отладчика. Для этого введите в окно отладчика две вещи: переменную f и выражение f<9 (оно может иметь только два значения: true - истина и false - ложь, другими словами – «условие выполнено» и «условие не выполнено»).

 

Задание 41: Вычислять с использованием while квадратные корни из чисел 900, 893, 886, 879 и т.д. до тех пор, пока это можно делать.

Date: 2015-09-17; view: 434; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию