Нашел скрипт который производит начисление вирт-денег за сообщение и репутацию на форуме, поставил первые 2-3 дня - радость, 4-5 - хм... странные искажения (ну и ладно), теперь все время замечаю что скрипт начал неправильно работать он искажает суму например:
надо 7.5
показывает 7.00000000005или
надо 7.5
показывает
7.0000004
умы яваскриптов помогите решить проблему
<script language="JavaScript">
var nick = ['ZloVeЩиЙ','XxMARSxX','Vientam']; //список пользователей
//Кому и сколько платили:
nick['ZloVeЩиЙ'] = '0'; // выплата текстом (пишем что хотим но только в одинарных ковычках)
nick['XxMARSxX'] = 69; // выплата числом
nick['Vietnam'] = 11+22+33-55; // выплата несколькими платежами 11 первый 22 второй 33 третий 55 штраф
Mcost=0.05; //стоит 1 сообщение (ща стоит 5 центов)
Rcost=0.05; //за +1 балл репутации +5 центов за -1 балл -5 центов
messages=$POSTS$;
rep=$REP_RATING$;
Mmoney=Math.round(100 * messages * Mcost)/100;
Mrep=Math.round(100 * rep * Rcost)/100;
for(var i=0; i<nick.length; i++) {
if('$USERNAME$'==nick[i]) {
N=nick[i];
if(isNaN(nick[N])) {
ue='$';
Tmoney=Mmoney + Mrep;
} else {
ue='$';
Tmoney=Mmoney + Mrep - Math.abs(nick[N]);
}
cashout=ue + nick[N];
break;
}
else
{
Tmoney=Mmoney + Mrep;
cashout='0'; //выводится если ничего не платили
}
}
if(Tmoney) {
document.write('<div align="center">');
document.write('<BR>RuR: <font color="green"><b>'+ Tmoney +'</b></font>');
document.write('<BR>Выплачено: <font color=red><b>'+ cashout +'</b></font>');
document.write('</div>');
}
</script>