Цикл "поки" та його використання, Детальна інформація

Цикл "поки" та його використання
Тип документу: Реферат
Сторінок: 10
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 20.8
Скачувань: 1412
Ue

TH

a

ae

ae

„@

^„@

-:=0.5*(X+a/X);

end;

{ abs(X-Y)<=d, значення Y вважається шуканим, адже |Y-a|
\xF0E7

Використання рекурентних співвідношень дозволяє легко програмувати розв'язання задач, де шукані величини можуть бути виражені як члени рекурентних послідовностей. Треба:

зрозуміти, що розв'язання задачі можна побудувати на використанні рекурентної послідовності;

записати відповідне рекурентне співвідношення;

визначити перші члени послідовності, що обчислюються без застосування співвідношення;

сформулювати умову, за якої треба продовжувати застосування рекурентного співвідношення.

Після цього згадані вище "деталі конструктора" та порядок їх розташування в алгоритмі стають очевидними.

Програма – це абсолютно точний опис дій, які треба виконати. Її неможливо написати, не сформулювавши чітко й точно, що ж саме повинно бути виконано. Рекурентні співвідношення якраз і дають точне вираження необхідних дій та служать надійною основою для написання програми. Насмілимося запевнити читача, що витрати часу на попереднє формулювання рекурентних співвідношень окупаються при написанні програми і дозволяють уникнути багатьох помилок.

2.2. Системи рекурентних співвідношень

Є чимало задач, у розв'язанні яких використовуються не одна, а кілька рекурентних послідовностей. Члени послідовності можуть залежати від попередніх членів як "своєї", так і інших послідовностей. Ці залежності записуються у вигляді систем рекурентних співвідношень. Насправді, ми вже бачили зв'язані послідовності: члени послідовності 1!, 2!, 3!, … залежать від їх номерів і попередніх членів. Але послідовність номерів сама рекурентна, оскільки кожний номер на 1 більше попереднього.

|. Тому, якщо додати всі члени від першого до останнього з таких an, що |an|>d за деякого d>0, то одержана сума відрізняється від sinx не більш, ніж на d.

, де n невідомо, а відомо лише, що |an|>d, |an+1|\xF0A3 d. Очевидно, sn=sn-1+an за будь-якого n>1, а s1=a1=x. Ці рівності виражають залежність значення суми від попередньої суми і відповідного доданка, тобто послідовність значень сум рекурентна. Помітимо, що при d<|x| доданок a1 не треба додавати до суми, і результатом повинна бути "сума без доданків". Тому до послідовності сум додамо s0=0; тепер sn=sn-1+an для n>0.

, виразивши an через an-1. Для цього у виразі для an побудуємо вираз, яким задається an-1:

=

.

при n>1, a1=x. Запишемо одержані рекурентні співвідношення в систему:



Побудуємо за нею алгоритм обчислення. Оскільки порядок обох співвідношень 1, достатньо двох змінних, S і A, для збереження членів послідовностей. Спочатку A:=x; S:=0. Далі перед кожним обчисленням S:=S+A треба спочатку перевірити, що A>d. Після додавання A до S обчислюється новий доданок (значення A), і все повторюється. Таким чином, цикл складений діями в такому порядку:

перевірка умови A>d,

додавання S:=S+A,

The online video editor trusted by teams to make professional video in minutes