Foros del Web » Creando para Internet » Flash y Actionscript »

Redondear a coma cinco

Estas en el tema de Redondear a coma cinco en el foro de Flash y Actionscript en Foros del Web. hola a todos! Mi problema es que yo quiero redondear una multiplicacion en flash a ',5' He probado con round, ceil, floor pero ninguna me ...
  #1 (permalink)  
Antiguo 16/12/2008, 03:32
 
Fecha de Ingreso: marzo-2007
Mensajes: 83
Antigüedad: 17 años
Puntos: 0
Redondear a coma cinco

hola a todos!

Mi problema es que yo quiero redondear una multiplicacion en flash a ',5'

He probado con round, ceil, floor pero ninguna me redondea a ,5.
Es decir, yo quiero que si me sale por ejemplo 4'3 redondee a 4.5

¿Es posible?
Muchas gracias
  #2 (permalink)  
Antiguo 16/12/2008, 10:58
Avatar de bernethe  
Fecha de Ingreso: abril-2004
Ubicación: San José, Costa Rica
Mensajes: 384
Antigüedad: 20 años
Puntos: 2
Respuesta: Redondear a coma cinco

A ver si este código te sirve:

Código actionscript:
Ver original
  1. function toFiveDec(n:Number):Number {
  2.     var miStr:String = (Math.round(n*100)/100).toString();
  3.     var tarr:Array = new Array();
  4.     if (miStr.indexOf(".")==-1) {
  5.         return n;
  6.     } else {
  7.         tarr = miStr.split(".");
  8.         if (tarr[1].length==1) {
  9.             tarr[1]+="0";
  10.         }
  11.         if (Number(tarr[1])<25) {
  12.             return Number(tarr[0]);
  13.         } else if (Number(tarr[1])>75) {
  14.             return Number(tarr[0]) + 1;
  15.         } else {
  16.             return Number(tarr[0]) + 0.5;
  17.         }
  18.     }
  19. }
  20. trace(toFiveDec(4));//retorna 4
  21. trace(toFiveDec(4.2325));//retorna 4
  22. trace(toFiveDec(4.2598));//retorna 4.5
  23. trace(toFiveDec(4.7));//retorna 4.5
  24. trace(toFiveDec(4.8));//retorna 5
__________________
..::BERNETHE::..
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:21.