$ include "seed7_05.s7i"; include "float.s7i"; const func float: vdc (in var integer: number, in integer: base) is func result var float: vdc is 0.0; local var integer: denom is 1; var integer: remainder is 0; begin while number <> 0 do denom *:= base; remainder := number rem base; number := number div base; vdc +:= flt(remainder) / flt(denom); end while; end func; const proc: main is func local var integer: base is 0; var integer: number is 0; begin for base range 2 to 5 do writeln; writeln("Base " <& base); for number range 0 to 9 do write(vdc(number, base) digits 6 <& " "); end for; writeln; end for; end func;