Мне нравится, какие tpqf, сказанные, а скорее, чем отключение учетной записи, когда обман обнаружен, реализуют ловушку поэтому каждый раз, когда они входят в систему, они видят свои взломанные очки и никогда не подозревают, что были отмечены как сообщение-розыгрыш. Google для "Сообщения-розыгрыша phpBB MOD" и Вы будете видеть оригинальный подход.
Это невозможно изменить глобально.
Если это просто для отображения, тогда используйте sprintf ("%. 3f", $ value);
.
Для математических целей используйте (int (($ value * 1000.0) + 0.5) / 1000,0)
. Это сработает для положительных чисел. Однако вам нужно будет изменить его для работы с отрицательными числами.
Используйте Math :: BigFloat
или bignum
:
use Math::BigFloat;
Math::BigFloat->precision(-3);
my $x = Math::BigFloat->new(1.123566);
my $y = Math::BigFloat->new(3.333333);
Или с bignum
вместо этого выполните:
use bignum ( p => -3 );
my $x = 1.123566;
my $y = 3.333333;
Затем в оба случая:
say $x; # => 1.124
say $y; # => 3.333
say $x + $y; # => 4.457