`` Algorithms
`` www.scriptol.net

`` Convert roman to decimal digits


array numerals = { 'I', 'V', 'X', 'L', 'C', 'D', 'M' }
array decimals = { 1 , 5 , 10 , 50 , 100 , 500 , 1000  }


natural roman2nat(text roman)

    int i, j, k
    natural natval = 0

    if roman = nil  return 0

    roman = roman.upper()
    k = -1

    for text c in roman

        j = numerals.find(c)    ` search position of letter in list

        if j = nil
            print c, "not a valid letter"
            return 0
        /if

        if k in 0 -- j             ` value in array
            natval - (decimals[k] * 2)
            natval + decimals[j]
        else
            natval + decimals[j]
        /if

        k = j

    /for

return natval



int main(int argc, array argv)
    int i = 1
    if argc < 2
        print "Roman to decimal - scriptol.org"
        print "roman ...list of numbers..."
        print "ex:  roman I VI IX"
        exit(0)
    /if
    while argc > 1
        text temp = argv[i]
        print argv[i], "=", roman2nat(temp)
        i + 1
    let argc - 1
return 0

main($argc, $argv)