><https://twitter.com/orange_in_spacehttps://pawoo.net/@orange_in_space
1は1.0000でもいいし00001でもいいし0001.0とかでもいい><仮想的な10進のメモリがあったとしてそれが5桁だったとして、12.3は00123で小数点の位置は右端からひとつ左って記憶することになるかも><
いやでもこれ、 https://mstdn.maud.io/@unarist/111014896869839168 を書いたときには別に仮想的な桁が下に伸びること想定してなかった気がするな?桁落ち上等、でも落ちた桁はどのみち結果に残らんからいやんやろとか思ってた気がする(実際には、1の1割引とか考えた時に🤔になる)
いま気づいたけど、なぜか らりおさんのtootがnere9に反映されるのに10分以上かかってて、昔の衛星中継というか時空を越えた議論みたいになってる?><;
オレンジはむしろその教え方をされたから、「桁とはなにか?」とか「小数点が桁をあわせる記号である」とか「1とはなにか?」とかと、あと16進とか2進とかも混乱せずに受け入れられたかも><
10で割ったものを引くと、小数による減算が発生しやすいから……
子供を小数概念と出逢わせないための涙ぐましい工夫を感じ取った
小数点と言うのは、複数の数値の桁の位置を揃えるための記号だよね?><小数点以下の桁数が違う二つの数値の計算する時には、小数点の位置で二つの数値の桁を揃えないといけない><桁を揃えると、二つの数値のうち小数点以下の桁数が少ない方の小さい方の桁には隙間が出来るけど、それの実態は0であるよね?><そこを「埋めなくてもいいじゃん?」ってなるかもだけど、計算機の場合はメモリのその部分を(未定義な数値じゃなく)0で埋める必要がある><
それはつまり無い0をあるように計算してるのと同じじゃん?><オレンジが言ってる方式はゼロサプレスの逆をやってる感じかも><
1割引を x - 0.1x と考えると小数点の扱いがどうこうもまあわかるけど、ビットシフトなら小数そもそも触っとらんがという気持ちになっている
さっきの「とりあえずn進数も全部揃えないと駄目じゃね?><」って発想がなんかオレンジだけの主張っぽくなって噛み合わなかったのも、オレンジの小数点の考え方のと同じかも?><
小数点を動かすというか、小数点を一旦忘れる為かも><計算機が小数点の位置は小数点の位置で別に処理するのと同じことを手計算でやってるだけのつもりだった><
計算に必要なマージンは確保したいので、桁数が固定ならスケールして計算するけど、桁数を無限に増やせるならその必要はないはず。
それは桁数を増やす(幅を広げる)だけであって小数点は動かしてなくない?
「500-0.1」って小学2年生くらい?がそのまま考えると「この点ってなに?><;」みたいになる(?)けど、「500.0-0.1」にして「5000-1」と同じで「点の位置はとりあえず忘れてあとから考えれ」なら・・・・あれじゃん?><(?)
だってたとえば10進数の500って500.0とか500.00000とか、小数点の後ろに0が無限に並んでる数値とも言えるわけで、計算する時にとりあえずやりにくかったら小数点の後ろに好きなだけ自分が計算しやすい数の0を追加できる><オレンジはそんな感じに習った><
気持ちはわかるような気もするがこの場合本当にそうか…?と唸っている
ていうか、単に文章が明示的じゃなかったからみんなで大混乱しただけかも?><
たとえば「『5分』の “60進1割” は『5秒』」みたいなのは直感的に受け入れられると思うので、やっぱり単にその後の引き算が面倒なだけな気はする
まあ定義よね……
どうあがいても「n進法における1割(n != 10)」なる概念に馴染みがないので結局しんどい
思考の /dev/null