✨ ベストアンサー ✨
簡単に まとめてみました。
■なぜ、このプログラムから 2 進法で表していると分かるか?
実は、このプログラムを見て「2 進法で表している」と
判断したわけでは ありません。
そもそも、コンピュータはデータ(数・文字・画像とか)を
内部で 2 進法で表す仕組みになっています。
だから、どんなプログラムでも、どんなデータでも、
2 進法で表されます。
ただし、あくまで内部(メモリ上や CPU 上)の話なので、実際には
・プログラムを実行する直前では 10 進数 → 2 進数
(今回の例だと、ソースコード上の数 0, 10, 0.1, 1 を 2 進数に)
・print で表示するときには 2 進数 → 10 進数
(今回の例だと、変数 s が表す内容を 10 進数に)
の変換が自動的にされています。
この 10 進数 → 2 進数の変換のときに
誤差が発生することがあります。
(今回の例だと 0.1 を 2 進数にするときに誤差が発生している)
なので、解答例では「0.1 を 2 進法で表すと」とありますが、
どんなプログラムでも言える、大前提の話ということになります。
不明な点があったら、コメントください。
分かる範囲で答えますので。
とてもわかりやすい説明で理解できました!!
ありがとうございます!