セントを表す小数点の後に2桁のドル値を表示したいとします。以下のプログラムでは、出力は23.24です。 Perlは小数点以下を丸めます。それを避ける方法。私はその出力を23.23にしたい。sprintfの小数点以下の桁数を切り捨てます(丸められません)。
$val=23.2395;
$testa=sprintf("%.2f", $val);
print "\n$testa\n $val";
セントを表す小数点の後に2桁のドル値を表示したいとします。以下のプログラムでは、出力は23.24です。 Perlは小数点以下を丸めます。それを避ける方法。私はその出力を23.23にしたい。sprintfの小数点以下の桁数を切り捨てます(丸められません)。
$val=23.2395;
$testa=sprintf("%.2f", $val);
print "\n$testa\n $val";
Math::Round異なる丸めメソッドを持っています。
use Math::Round 'nlowmult';
print nlowmult(0.01, 23.2395); # 23.23
ありがとうございました – Arav
あなたはそれが常に切り捨てしたいですか? – Schwern
ドルの代わりにペニーで計算し、分数ペニーを切り捨てるのに 'int'を使います。 – tchrist