私が取り組んでいる簡単な問題は、300m を数秒で走り、それを文字列に変換して "9:99.99" と表示することです。秒を取得するには、次の MOD 操作を実行します。
sec = result % 60;
これは、小数部分が 0.5 (つまり、60.5、75.5 など) でない限り、期待どおりに機能しません。他の小数では、表現するのに 12 桁以上の有効数字が必要な結果が得られます。
たとえば、64.55 % 60 は、結果として 4.5499999999999997 を返します。
簡単な解決策は、小数で分割し、結果を小数点以下の桁数で連結することだと知っていますが、これはただ興味をそそられます。MOD だけを使用してこれを修正する良い方法はありますか?