FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#1
|
|||
|
|||
decimales
hola amigos tengo un problemita q no he podido resolver:
resulta q en mi progra suma valores con 2 decimales como 7.33 5.83 o 7.00 y la sumatoria de estos se guardan en un bd en access en un campo doble fijo con 2 decimales pero hay 2 variables q suman lo mismo a y b y cuando muestran el resultado a sale con 40.25 y b con 40.31 y no se porq ni como resolverlo alguda idea de por q y/o como resolverlo gracias de antemano saludos.... |
#2
|
||||
|
||||
Y cómo te ayudamos si no nos das más datos?, no podemos ver tu ordenador , explícanos un poquito más, por favor.
Te sugieron que leas la guía de estilo de clubdelphi, muchas gracias |
#3
|
||||
|
||||
Cita:
Revisa muy bien tu código. Otra sugerencia es que inicies ambas variables siempre a 0. Saludos, Chris |
#4
|
|||
|
|||
yo lo que te sugiero es que utilices variables de tipo currency
|
#5
|
||||
|
||||
Cita:
Saludos. |
#6
|
|||
|
|||
if(Form4->ADOT->FieldValues["Lunes"]==Form5->Label1->Caption)
{hs=hs+7.3;hs2=hs2+7.33;} eso lo hago igual con cada dia de la semana.. el caption del label es un tex porq no lo puedo comparar directamente con "palabra", las dos estan inicalizadan en "0" al principio del codigo y como digo en el primer mensaje estos valores al final de la semana se guardan en la bd de hacs q tienen los campos definidos como doble fijo con 2 decimales... y pues no se q puede tener mal.. deberia tener los mismos valores al final de la semana.. al final del recorrido (comparar todos los dia de las semanan) estos son los resultados hs= 43.79 y hs2=43.98 eso es mucha diferencia y en otros casos por q las comparaciones son diferentes y suman distintos estos son los resultados hs=47.55 y hs2=47.65 porfa me pueden serguir orientando estoy muy confundido por esta cituacion... gracias por su ayuda saludos... |
#7
|
||||
|
||||
¿Cómo están definidas hs y hs2? ¿Cómo las inicializas?
Saludos. |
#8
|
|||
|
|||
las tengo definidas en el programa como float, cuando la guardo en la BD se guardan como doble fijo de dos decimales. ese es el problema? cuando escribo doble en C no me aparece en negrita. gracias saludos
|
#9
|
||||
|
||||
Una cosa me llama la atención:
Cita:
Por otro lado, si a un float le sumas el resultado de una operaioón de un int con una cte sin decimales, el resultado sumado es un int, osea no tiene decimales. Esto es importante si estas haciendo divisiones. No es lo mismo estas dos expresiones: Código:
int n = 9; float f1 = n/2; // f1 vale 4 float f2 = n/2.0; // f2 vale 4.5 Saludos. |
#10
|
|||
|
|||
ok gracias voy a revisar eso de 7.3 y 7.33 porq creo q eso ya lo acomode y no solo tiene q hacer esa operacion de supar se gun la condicion q cupla.. gracia spor su ayuda... saludos
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Decimales. | Iron | Varios | 11 | 29-03-2009 19:29:34 |
Decimales | eduardo360 | Varios | 1 | 19-02-2008 02:29:28 |
Decimales | Luis Alberto | Varios | 1 | 19-05-2006 16:40:25 |
decimales | jfontane | Varios | 2 | 24-06-2003 05:35:19 |
Decimales | alexisns | Conexión con bases de datos | 2 | 22-06-2003 21:45:40 |
|