Comunidad de diseño web y desarrollo en internet online

ya hice mi calculadora, y los miles COMO? y decimanles....

Citar            
MensajeEscrito el 21 May 2009 05:35 am
buenas mis amigos aqui con una pregunta algo extraña,,,,,gracias a los compañeros que han prguntado como sumar los valores,,,,me puise a investigar un poco y di como hacer unas operaciones que nesecitaba hacer,,,,

lo que tenia que hacer era el calculo de una mensualidad calculando precio interes, plazos e impuestos. ya lo logre,,,,,

pero me gustaria poder hacer que me presente las cantidades separadas pr miles o millones asi como poder decirle que solo me presente dos decimales,,,,uso el AS2

por favor nesecito su ayuda

el codigo que use

pre = "PRECIO";
en = "ENGANCHE";
pla = "PLAZO";
resultadom1 = 0;
resultadom2 = 0;
mensual = 0;
montofinal = 0;
iva = 0;
inte = 0;
convertir.label = "Convertir";
convertir.onRelease = function ()
{
iva = precio * 0.12;
resultadom1 = (iva-(-precio));
resultadom2 = resultadom1 - en;
inte = resultadom2 * 0.095;
montofinal = (resultadom2-(-inte));
mensual = montofinal/pla;
};
onEnterFrame = function ()
{
precio = pre;
enganche = en;
plazo = pla;
iva = iva;
interes = inte;
financiamiento = fina;
montofinal = montofinal
};


GRACIAS

Por vcantante

6 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 May 2009 08:54 am
Tendrás que trabajar con Strings y cuando vayas a realizar cálculos convertirlos a Number. Este post se refería a redondear decimales a 3 dígitos después de la coma, en el caso tuyo específico creo que necesitarás redondear a los valores que te plazca. La siguiente función te ayudará con redondear a los decimales que desees, ya la parte de que te devuelva miles y millones debes implementarla siguiendo una técnica similar:

Código ActionScript :

function roundNumber(num:Number, dec:Number):String{
   
   var ceroString:Function = function(cant:Number):String{
      
      var ceros:String = "";
      var i:Number;
   
      for(i = 0; i < cant; i++){
         
         ceros += "0";
         
      }
      
      return ceros;
      
   }
   
   //---Redondear el número a la cantidad de decimales correcta
   var n:Number = (dec > 0) ? Math.round(num * Math.pow(10, dec)) / Math.pow(10, dec) : Math.round(num);
   
   var str:String = String(n);
   var strArray:Array = str.split(".");
   var ret:String;
   
   //---Si el número es entero
   if(strArray.length == 1){
      
      ret = (dec > 0) ? str + "." + ceroString(dec) : str;
      
   //---Si el número no es entero
   }else{
      
      ret = strArray[0] + "." + strArray[1] + ceroString(dec - strArray[1].length);
      
   }   
   
   return ret;
   
}


Código ActionScript :

trace(roundNumber(0.00078, 2)); // Devolverá 0.00
trace(roundNumber(56.7, 4)); // Devolverá 56.7000
trace(roundNumber(12.34563, 3)); // Devolverá 12.346

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 21 May 2009 04:14 pm
muchas gracias por las respuesta ,,,,,te lo agradezco mucho,,,,pero la verdad no se como implementarlo al codigo que tengo,,,,no se por donde empezar,,,,,

si pudiras darme mas pistas te lo agradezco,,,,,,,

vcantante

Por vcantante

6 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 May 2009 04:38 pm
Bueno, no sé el código que tienes, sólo he posteado una función la cual debes declarar en tu documento y llamar cuando quieras que un número se redondee a la cantidad de decimales que desees.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 21 May 2009 05:08 pm
muchas gracias la verdad es que este es el codigo que use

Código :

pre = "PRECIO";
en = "ENGANCHE";
pla = "PLAZO";
resultadom1 = 0;
resultadom2 = 0;
mensual = 0;
montofinal = 0;
iva = 0;
inte = 0;
convertir.label = "Convertir";
convertir.onRelease = function ()
{
iva = precio * 0.12;
resultadom1 = (iva-(-precio));
resultadom2 = resultadom1 - en;
inte = resultadom2 * 0.095;
montofinal = (resultadom2-(-inte));
mensual = montofinal/pla;
};
onEnterFrame = function ()
{
precio = pre;
enganche = en;
plazo = pla;
iva = iva;
interes = inte;
financiamiento = fina;
montofinal = montofinal
};



si me pudieras ayudar te lo agradezco

vcantante

Por vcantante

6 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 May 2009 08:00 pm
¿Cual de estas variables es la que muestras y no se redondea su valor a dos decimales? Parece ser que son todas, por ejemplo si dices:

Código ActionScript :

inte = roundNumber(resultadom2 * 0.095, 2);


la variable inte tomará el valor del cálculo (resultadom2 * 0.095), pero redondeando a dos decimales.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 22 May 2009 12:53 am
ya lo entendi,,,,porfin,,,,MUCHISIMAS GRACIAS ,,,gracias por la pasiencia,,,,,

Vcantante

Por vcantante

6 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.