Prvne jsem myslel ze jsi vyzkousel znovu ten program, ale pak si vsimnul ze tam mas "integer" a ne "float". Pak me doslo, ze ani nevim i kdyz je to citelne co je to vlastne z jazyk! C to neni, ani nic co z C vzeslo. Awk, Bash, Forth, Python, ZX Spectrum basic, QBasic, Boriel Basic, Visual Basic, Pascal, BrainF*ck, Perl... proste nic v cem jsem se kdy aspon trochu vrtal.
Julia?
PS: Jinak ze je ten vypis spatne mohlo trknout vsechny i bez kalkulacky, protoze jak se jednou dostane nula na konec, tak nejde pomoci nasobeni odstranit. Nuly jen pribivaji...
Ještě jedna varianta :)
def main : IO Unit := do let mut x := 1. let y := 99. for _ in [:10] do x := x * y IO.println s!"{x}"
Jinak ty "chybné" výsledky jsou prostě jen důsledek použití přesnosti float64
.
99.000000
9801.000000
970299.000000
96059601.000000
9509900499.000000
941480149401.000000
93206534790699.000000
9227446944279200.000000
913517247483640832.000000
90438207500880445440.000000