русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Оператор цикла с предусловием.


Дата добавления: 2015-06-12; просмотров: 603; Нарушение авторских прав


Оператор цикла с предусловием имеет следующий вид:

WHILE В DO S

где WHILE (пока), DO (выполнить) - служебные слова;

В - условие (логическое выражение)

S - тело цикла, содержащие один или несколько операторов.

Работа оператора цикла WHILE заключается в следующем.

Если условие истинно, то выполняются операторы, входящие в тело цикла. Как только условие станет ложным, выполнение операторов цикла прекращается. Если условие ложно с самого начала, то оператор цикла не выполняются ни разу. Условие вычисляется и анализируется перед каждым выполнением цикла, отсюда и термин “предусловие”. Значения переменных, входящих в условие, должны изменяться в теле цикла, иначе, цикл никогда не завершится.

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

 

 

Пример: Составить программу для определения K, при котором функция Xk/K становится меньше A , где K =1,2,3…

Блок-схема алгоритма для данного примера приведена на рис.4.

Программа задачи имеет вид:


 
 


PROGRAM ITER;

VAR X, A, P: REAL;

K: INTEGER;

BEGIN

READ (X, A);

K: =1;

P: =X;

WHILE P/K<A DO

BEGIN

K: =K+1;

P: =P*X;

END;

WRITE (‘K= ‘, K); END.


 
 

 


В блоке 2 осуществляется ввод произвольного значения X и A. В блоке 3 переменная К получает начальное значение равное 1. В блоке 4 задается начальное значение равное P=X. В блоке 5 происходит сравнение значения P/K с переменной A, т. е. проверка условия. Если условие истинно, то управление передается в тело цикла к блокам 6 и 7, где происходит вычисления очередных значений переменных К и P, входящих в условие. После этого управление передается блоку 5, как только условие станет ложным, т. е. P/K>=A, выполнение операторов цикла прекращается и управление передается блоку 8, где происходит вывод на экран значения переменной К. После этого выполняется блок 9.



 

Пример: Составить программу для вычисления суммы

членов бесконечного ряда с точностью до

члена ряда , меньшего е:

Z=1+X+X2/2!+X3/3!+…+Xn/n!…

Так как в данном случае при суммировании заранее не известно число членов ряда, то воспользоваться оператором цикла FOR невозможно. Задача вычисления суммы членов бесконечного ряда требует организации итерационного цикла, окончание которого определяется условием у<е, где у - значение члена ряда. Начальное значение суммы необязательно равно нулю, если значение первого члена ряда вычислять нет необходимости.

Программа имеет следующий вид:

PROGRAM RYD;

VAR X, EPS, Y, Z: REAL;

N: INTEGER;

BEGIN

READ (X, EPS);

N: =0; Y: =1; Z: =1

WHILE Y>=EPS DO

BEGIN

N: =N+1; Y: =Y*X/N; Z: =Z+Y; END;

WRITE (‘Z= ‘, Z); END.

 

Задается начальное значение произведения y=1, начальное значение суммы, равное первому члену ряда z=1. Далее происходит проверка условия. Если условие истинно, то управление передаётся в тело цикла, где происходит вычисление очередных значений переменной n, члена ряда y и суммы z . После этого управление переходит к проверке условия. Как только условие станет ложным, управление будет передано оператору вывода значения суммы ряда z на экран.

 



<== предыдущая лекция | следующая лекция ==>
Операторы цикла с присваиванием. | Вложенные циклы.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.039 сек.