Здавалка
Главная | Обратная связь

Циклы с заранее неизвестным числом повторений



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

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

Так как количество слагаемых заранее неизвестно, то циклом FOR пользоваться нельзя. Для этих целей предназначаются циклические операторы WHILE и REPEAT. Необходимо помнить, что у них параметр цикла автоматически не изменяется и его надо менять принудительно. Поэтому при составлении блок-схемы алгоритма блок "Модификация" не используется.

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

Где П знак произведения (аналогично знаку суммы), то есть 5! = 12345 = 120. Факториал можно вычислить отдельным циклом, а можно и в цикле вычисления суммы. Для этого вводится дополнительная переменная, например f = j !, и затем в цикле умножается на текущее значение j.

Кроме значения суммы на печать полезно вывести значение счетчика циклов, то есть узнать, из скольких слагаемых состоит сумма.

Примечание. В языке Турбо Паскаль под переменные типа INTEGER выделяется два байта, и допустимые для них значения находятся в диапазоне только от -32768 до 32767. Поэтому число 10!, реально равное 3628800, в этом случае будет представлено как 24320.Таким образом выражение под знаком суммы может никогда и не стать меньше заданной точности. Для работы с большими целыми числами рекомендуется использовать вещественный тип REAL с диапазоном представления от до , или целый тип LongInt с диапазоном от -2.147.483.648 до 2.147.483.647.


Варианты заданий

Номер вари­анта Вычислить При Х, равном Точность вычислений
0,149
5,99
3,1
1,91
1,42
0,99
1,51
3,48
7,55
2,15
0,81

 

Номер вари­анта Вычислить При Х, равном Точность вычислений
0,77
3,95
1,62
4,14
1,24
3,3
2,8
0,95
4,5
0,85
2,4

 

Номер вари­анта Вычислить При Х, равном Точность вычислений
1,7
4,2
2,2
3,1
8,5
0,15
2,9

 








©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.