#!/usr/bin/tclsh if {[array names env SCRIPT_FILENAME] != "" && $env(SCRIPT_FILENAME) == $argv0} { puts "Content-type: text/plain\n" } proc power {a b} { if {$b < 0} { set a [expr 1 / $a] set b [expr -$b] } set r 1 while {$b > 0} { set r [expr $r * $a] incr b -1 } return $r } set yearlist {3 5 7 10 20 30} puts -nonewline " " foreach year $yearlist { puts -nonewline [format "%9d" $year] } puts "" foreach interest {5 6 7 8 10 12} { puts -nonewline [format "%4.1f%%" $interest] set i [expr $interest/100.0/12] foreach year $yearlist { set n [expr $year*12] set t [power [expr 1 + $i] $n] set t [expr $i * $t / ($t - 1) * 10000] puts -nonewline [format "%9.2f" $t] } puts "" }