Kahano sudėties algoritmas

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Jump to navigation Jump to search

Kahano sudėties algoritmas randa daugelio slankaus kablelio tipo skaičių sumą tiksliau, nei ji gaunama tiesiog sudedant šiuos skaičius. Suma visada randama ribotu tikslumu, nes veiksmai su slankaus kablelio (angl. real, double) skaičiais yra apytiksliai. Algoritmą pasiūlė Viljamas Kahanas.

Pseudokodu algoritmas užrašomas taip:

function kahanSum(input, n)
    var sum = input[1]
    var c = 0.0
    for i = 2 to n
        y = input[i] – c
        t = sum + y
        c = (t – sum) – y
        sum = t
    return sum

Nuorodos[redaguoti | redaguoti vikitekstą]