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


Полезное:

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


Категории:

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






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





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

WHILE <логическое выражение> DO <оператор>;

Этот оператор заменяет в блок-схеме цикла только блок «Решение», если он стоит в самом начале цикла. Если используется параметр цикла, то он должен явно изменяться в цикле.

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

 

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

В качестве примера составим программу для вычисления суммы при заданной точности ε = 10-3:

Program Sum2;

Const Eps=1e-3;

Var

i:integer;

S,v:real;

Begin

S:=0;

i:=1;

v:=1; {любое число больше Eps}

While v>Eps do

Begin

v:=(i+1)/(i*i*i+8);

S:=S+v;

i:=i+1

end;

WriteLn (‘Сумма=’,S:6:3)

end.

Заметим, что вывод суммы выполняется в виде числа с фиксированной точкой (для большей наглядности) с тремя знаками в дробной части. Если выводить больше значений, то они недействительные, – числовой мусор; если выводить меньше, то тогда зачем считать с такой точностью?







Date: 2016-07-22; view: 288; Нарушение авторских прав



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