数値の表記が e を使ったものに切り替わるタイミング
2^i をプリントするプログラムを作成しました。
function main() for i = 1,50 do print(i, 2^i, type(2^i)) end end main()
実行結果です。
1 2 number 2 4 number 3 8 number 4 16 number 5 32 number 6 64 number 7 128 number 8 256 number 9 512 number 10 1024 number 11 2048 number 12 4096 number 13 8192 number 14 16384 number 15 32768 number 16 65536 number 17 131072 number 18 262144 number 19 524288 number 20 1048576 number 21 2097152 number 22 4194304 number 23 8388608 number 24 16777216 number 25 33554432 number 26 67108864 number 27 134217728 number 28 268435456 number 29 536870912 number 30 1073741824 number 31 2147483648 number 32 4294967296 number 33 8589934592 number 34 17179869184 number 35 34359738368 number 36 68719476736 number 37 137438953472 number 38 274877906944 number 39 549755813888 number 40 1099511627776 number 41 2199023255552 number 42 4398046511104 number 43 8796093022208 number 44 17592186044416 number 45 35184372088832 number 46 70368744177664 number 47 1.4073748835533e+14 number 48 2.8147497671066e+14 number 49 5.6294995342131e+14 number 50 1.1258999068426e+15 number
i が 47 のときに表記が e を使ったものに変わりました。