ВУЗ:
Составители:
нц для i от 1 до 5
X[i] := i*i*i
Y[i] := X[i]/2
кц
7.10. Какие циклы называют итерационными?
Особенностью итерационного цикла является то, что число повторений операторов тела
цикла заранее неизвестно. Для его организации используется цикл типа пока . Выход из
итерационного цикла осуществляется в случае выполнения заданного условия.
На каждом шаге вычислений происходит последовательное приближение к
искомому результату и проверка условия достижения последнего.
Пример. Составить алгоритм вычисления бесконечной суммы
с заданной точностью (для данной знакочередующейся бесконечной суммы
требуемая точность будет достигнута, когда очередное слагаемое станет по
абсолютной величине меньше ).
Вычисление сумм — типичная циклическая задача. Особенностью же нашей
конкретной задачи является то, что число слагаемых (а, следовательно, и число
повторений тела цикла) заранее неизвестно. Поэтому выполнение цикла должно
завершиться в момент достижения требуемой точности.
При составлении алгоритма нужно учесть, что знаки слагаемых чередуются и степень
числа х в числителях слагаемых
возрастает.
Решая эту задачу "в лоб" путем вычисления на каждом i-ом шаге частичной суммы
S:=S + ((-1)**(i-1)) * (x**i) / i ,
мы получим очень неэффективный алгоритм, требующий выполнения большого числа
операций. Гораздо лучше организовать вычисления следующим образом: если обозначить
числитель какого-либо слагаемого буквой р , то у следующего слагаемого числитель
будет равен —р*х (знак минус обеспечивает чередование знаков слагаемых), а само
слагаемое m будет равно p/i , где i — номер слагаемого.
Сравните эти два подхода по числу операций.
нц для i от 1 до 5
X[i] := i*i*i
Y[i] := X[i]/2
кц
7.10. Какие циклы называют итерационными?
Особенностью итерационного цикла является то, что число повторений операторов тела
цикла заранее неизвестно. Для его организации используется цикл типа пока . Выход из
итерационного цикла осуществляется в случае выполнения заданного условия.
На каждом шаге вычислений происходит последовательное приближение к
искомому результату и проверка условия достижения последнего.
Пример. Составить алгоритм вычисления бесконечной суммы
с заданной точностью (для данной знакочередующейся бесконечной суммы
требуемая точность будет достигнута, когда очередное слагаемое станет по
абсолютной величине меньше ).
Вычисление сумм — типичная циклическая задача. Особенностью же нашей
конкретной задачи является то, что число слагаемых (а, следовательно, и число
повторений тела цикла) заранее неизвестно. Поэтому выполнение цикла должно
завершиться в момент достижения требуемой точности.
При составлении алгоритма нужно учесть, что знаки слагаемых чередуются и степень
числа х в числителях слагаемых возрастает.
Решая эту задачу "в лоб" путем вычисления на каждом i-ом шаге частичной суммы
S:=S + ((-1)**(i-1)) * (x**i) / i ,
мы получим очень неэффективный алгоритм, требующий выполнения большого числа
операций. Гораздо лучше организовать вычисления следующим образом: если обозначить
числитель какого-либо слагаемого буквой р , то у следующего слагаемого числитель
будет равен —р*х (знак минус обеспечивает чередование знаков слагаемых), а само
слагаемое m будет равно p/i , где i — номер слагаемого.
Сравните эти два подхода по числу операций.
Страницы
- « первая
- ‹ предыдущая
- …
- 206
- 207
- 208
- 209
- 210
- …
- следующая ›
- последняя »
