FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
sumando dos float no pbtengo valor real
Hola Amigos
Acudo a ustedes (como siempre XD) sucede que estoy sumando dos valores de tipo float y no obtengo el valor real cuando suma. Posteo el código a parti de una ayuda del amigo ecfisa y de paso los valores con los que sume para probar. incluyo la math.h en la .h Código:
double Round(double Num, int Dec) { return ((float)(int)(Num*pow(10,Dec))/pow(10,Dec)); } Código:
float sum; sum = StrToFloat(Edit1->Text) + StrToFloat(Edit2->Text); Edit3->Text = FloatToStr(Round(sum,3)); Edit4->Text = FloatToStr(sum); 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_ ________________________________________________________________________________ Última edición por lmpadron fecha: 12-09-2011 a las 21:00:31. |
#2
|
||||
|
||||
Hola Impadron.
Creo que el problema está en que la función de redondeo que te puse antes es: Código:
return ((float)((int)(Num*pow(10,Dec)+0.5)))/pow(10,Dec); Código:
return ((float)(int)(Num*pow(10,Dec))/pow(10,Dec)); Código:
double Redondear(double Num, int Dec) { return ((float)((int)(Num*pow(10,Dec)+0.5)))/pow(10,Dec); } void __fastcall TForm1::Button1Click(TObject *Sender) { float n1= 10.444, n2= 0.001, sum = n1 + n2; Edit1->Text = FloatToStr(Redondear(sum,3)); /* muestra: 10.445 */ }
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 12-09-2011 a las 21:11:09. |
#3
|
||||
|
||||
ok gracias amigo, funciona perfecto
__________________
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 |
problema al convertir valor en edit de forma str a float | jirbert | Varios | 25 | 03-10-2008 23:48:02 |
Borrar campos float con valor null en tablas paradox | NPIdea | SQL | 2 | 26-01-2007 09:44:56 |
Sumando columnas con Qreport ? | Coco_jac | Varios | 5 | 27-01-2006 14:57:56 |
Valor Null en campo float de un FasReport | Romanosky | Impresión | 4 | 10-11-2004 17:56:04 |
error sumando campos | weke | SQL | 2 | 02-06-2004 14:52:33 |
|