Итерација — разлика између измена
Садржај обрисан Садржај додат
м Разне исправке; козметичке измене |
Нема описа измене |
||
Ред 1:
[[
'''Итерација''' је чин процеса понављања са циљем да се приближимо жељеном циљу, мети или резултату. Свако понављање поступка се такође назива "интерација", и резултати једне итерације се користи као полазна тачка за следећу интерацију. Пентагон са десне стране је такође добар пример како се итерација односи на [[Рекурзија|рекурзију]]. Иако се користи итерација, на пример, да рашчлани повезане листе, рекурзија је потребна када прелазимо на бинарна стабала. Пентагон показује оба.<ref name="Thinking Recursively with Java">{{cite book |isbn= 978-0471701460|url= http://www.amazon.com/Thinking-Recursively-Java-Eric-Roberts/dp/0471701467/ref=sr_1_1?s=books&ie=UTF8&qid=1397925147&sr=1-1&keywords=thinking+recursively+with+java |title=Thinking Recursively with Java |
==Математика==
Итерација у математици се може односити на процес [[Итерација функције|итерације функције]], односно применом функције у више наврата, користећи излаз из једне итерације као улаз у други. Итерација наизглед једноставних функција може да произведе комплексна понашања и тешке проблеме - на пример, погледајте [[Колацова претпоставка|Колацову претпоставку]] и [[жонглерове секвенце]].
Друга употреба интерације у математици је у [[Итеративне методе|итеративним методама]] које се користе за производњу приближних нумеричких решења за одређене математичке проблеме. [[Њутнов метод]] је пример итеративног метода. Ручно израчунавање квадратног корена неког броја се често користи и познат је пример.
==Рачунарство==
'''Итерација''' у рачунарству је понављање блок наредби унутар [[Рачунарски програм|рачунарског програма]]. Може се користити и као општи појам, као синоним за понављање, и да опише специфичан облик понављања са [[Променљив објекат|променљивим]] стањем. Збуњујуће је то што се може односити на било које понављање које почиње коришћењем експлицитне структуре понављања, без обзира на променљивости.
Када се користи у првом смислу, [[Рекурзија|рекурзија]] је пример ''итерације'', али обично се користи ''рекурзивни запис'', који није предмет ''итерације''.
Међутим, када се користи у другом (више ограниченом) смислу, итерација описује стил програмирања коришћен у императивним програмским језицима. Ово је у супротности са рекурзијом, која има више декларативни приступ.
Коришћена у трећем смислу, понављање користи ''while'' или ''for петљe'' исто као што оне користе map или fold функцијe и ово се може сматрати итерацијом.
Овде је пример итерације ослањајући се на разоран задатак, у императивном псеудокоду:
<pre>
a = 0
for i from 1 to 3 // пролази кроз петљу 3 пута
{
a = a + i // повећава тренутну вредност а за i
}
print a // штампа број 6 (0 + 1; 1 + 2; 3 + 3)
</pre>
У овом делу програма, вредност променљиве i се мења кроз време узимајући вредности 1,2 и 3. Ова промена вредности—или променљиво стање—је карактеристика итерације.
Итерација се може приближавати помоћу рекурзивне технике у [[Функционално програмирање|функционалним програмским језицима]]. Следећи пример је [[Scheme (програмски језик)|Scheme програмском језику]]. Имајте на уму да је оно што следи рекурзивно (посебан случај интерације), због дефиниције "како поновити", итер функција, позива себе како би се решио проблем инстанце. Конкретно користи [[Реп рекурзија|реп рекурзију]] па тако не користи велике количине стек простора.
<source lang="scheme">
(let iterate ((i 1) (a 0))
(if (<= i 3)
(iterate (+ i 1) (+ a i))
(display a)))
</source>
[[Итератор]] је објекат који пружа итерацију као генерички сервис, омогућавајући да се итерација уради на исти начин за низ различитих структура података. Супротно томе, [[итератее]] је апстракција која прихвата или одбија податке током процеса итерације (контролисан споља од стране [[пописивач|пописивача]] - па за разлику од кода који користи итераторе, итератее код није "задужен" за процес итерације).
Итерација се врши помоћу радног листа, или помоћу solver или goal seek функција које су доступне у Екселу. Многе имплицитне једначине као што је Colebrook једначина могу се решити у удобности радног листа пројектовањем одговарајућих алгоритама израчунавања.<ref>{{cite web| title=Solve Implicit Equations Inside Your Worksheet|url=http://www.frpdesigns.com/iteration.htm}}</ref>
Многи од инжењерских проблема, као што су решавање Colebrook једначине достиже 8 цифарну прецизност у малих 12 итерација и максимално 100 итерација је довољно да се постигне 15 цифарна прецизност.<ref>{{cite web| title=Colebrook Equation|url=http://sites.google.com/site/excelsolveimpliciteq/}}</ref>
== Види још ==
* [[Recursion]]
* [[Fractal]]
* [[Iterated function]]
== Референце ==
{{reflist}}
== Спољне везе ==
*{{wiktionary-inline}}
|