FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
FLOAT definir lugares decimales
Hola amigos
Hay alguna forma de definir cuantos numero decimales (o sea después de la ,) puedo usar en el Float. O sea alguna forma de definir que mi variable de tipo Float solo use X cantidad lugares después de la coma Gracias de Antemano
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código. Cuando miras fijamente al abismo, este te devuelve la mirada oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_ oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_ oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_ oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_ oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_ ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_ ________________________________________________________________________________ |
#2
|
||||
|
||||
Una variable Float tiene (en teoría) infinitos decimales.
Lo que puedes hacer es redondear el valor a la cantidad de decimales que quieras. Por ejemplo, deberías mirar el Help para la función RoundTo Cita:
En es ecaso deberías ver las máscaras. |
#3
|
||||
|
||||
muchas gracias mi hermano eso era exactamente lo que estaba buscando.
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código. Cuando miras fijamente al abismo, este te devuelve la mirada oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_ oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_ oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_ oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_ oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_ ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_ ________________________________________________________________________________ |
#4
|
||||
|
||||
Un problemilla
Cuando uso el RoundTo() me dice Código:
[C++ Error] Unit1.cpp(323): E2268 Call to undefined function 'RoundTo'.
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código. Cuando miras fijamente al abismo, este te devuelve la mirada oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_ oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_ oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_ oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_ oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_ ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_ ________________________________________________________________________________ |
#5
|
||||
|
||||
Hola impadron.
Código:
double pi= 3.141592654,r; ShowMessage(FloatToStr((int)(pi*100)/100.0)); // 2 decimales ShowMessage(FloatToStr((int)(pi*1000)/1000.0)); // 3 decimales ShowMessage(FloatToStr((int)(pi*10000)/10000.0));// 4 decimales r = (int)(pi*100000)/100000.0; // 5 decimales //...
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 11-08-2011 a las 15:58:00. Razón: Acomodar identación |
#6
|
||||
|
||||
Veo que estás programando en C. No se dónde estará esta función en C.
De todos modos, si quieres programarla tu, la cosa va más o menos así:
Nota: Esta función no tiene en cuenta el último decimal: 1.239 = 1.23 La función perfeccionada debería tenerlo en cuenta y devolver 1.239 = 1.24 |
#7
|
||||
|
||||
Gracias por sus ejemplos duilioisola y ecfisa en ambos casos puedo definir con cuantos decimales deseo trabajar ahora como decia duilioisola en ninguno de los casos puedo redondear. Saben alguna forma de hacer en c++ ??
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código. Cuando miras fijamente al abismo, este te devuelve la mirada oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_ oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_ oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_ oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_ oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_ ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_ ________________________________________________________________________________ |
#8
|
||||
|
||||
Hola impadrón.
Para obtener 'n' números decimales: Código:
... #include <math.h> ... double NumNDec(double Num, int Dec) { return ((float)(int)(Num*exp(log(10)*Dec))/exp(log(10)*Dec)); } Código:
void __fastcall TForm1::Button1Click(TObject *Sender) { double pi= 3.141592654; for(int i=1; i< 5; i++) ListBox1->Items->Add(FloatToStr(NumNDec(pi,i))); }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 11-08-2011 a las 16:57:30. |
#9
|
||||
|
||||
Hola Impadrón.
No había visto tu último mensaje mientras ponía el anterior. Para redondear: Código:
... #include <math.h> ... double Round(double Num, int Dec) { return ((float)((int)(Num*pow(10,Dec)+0.5)))/pow(10,Dec); } Código:
void __fastcall TForm1::Button1Click(TObject *Sender) { double pi= 3.141592654; for(int i=1;i< 5; i++) ListBox1->Items->Add(FloatToStr(Round(pi,i))); } Edito: En el ejemplo de número de dígitos me había olvidado de pow... , así que hice unos malabares... Usando pow la función sería: Código:
double NumNDec(double Num, int Dec) { return ((float)(int)(Num*pow(10,Dec))/pow(10,Dec)); }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 11-08-2011 a las 18:13:03. |
#10
|
||||
|
||||
muchas gracias
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código. Cuando miras fijamente al abismo, este te devuelve la mirada oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_ oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_ oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_ oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_ oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_ ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_ ________________________________________________________________________________ |
#11
|
|||
|
|||
Yo utilizo la función FormatFloat. Sería algo así:
cadena = FormatFloat("0,.000", numero) numero sería el valor decimal original y en cadena nos quedaria un string con separador de miles (,) , en este caso con tres decimales (número de ceros a la derecha del .). Si se quiere luego se puede volver a convertir de String a float con StrToFloat. Un saludo |
#12
|
||||
|
||||
voy a probarlo !!!
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código. Cuando miras fijamente al abismo, este te devuelve la mirada oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_ oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_ oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_ oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_ oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_ ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_ ________________________________________________________________________________ |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
cantidad de decimales en campo float | look | SQL | 5 | 04-10-2010 18:53:54 |
mostrar en una grilla float con 4 decimales | Patricio | Varios | 2 | 12-11-2008 14:27:49 |
manejo de decimales de un Float | BC++ | C++ Builder | 3 | 12-08-2008 17:51:58 |
reducir decimales de float | el_barto | Varios | 4 | 22-09-2005 21:27:09 |
Decimales con más de 4 lugares después del punto...? | Blazer2104 | Conexión con bases de datos | 2 | 10-11-2004 15:15:22 |
|