![]() |
![]() |
| Paypal | 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 |
|