FLOAT de los ... no va!
Saludos,
Puede que sea una tonteria pero mirad quiero almacenar el valor real de una división La división es 3860 / 3600 lo pongo en un float de esta forma float aux; aux=3860/3600; PERO AUX tiene el valor 1! cuando tendria que tener 1,0722222222222222 Que es lo que pasa? |
Cita:
¿Como visualizas el resultado? |
Hola vivamotos, has esta pruebita y veraz que si funciona.
Saluditos |
...Bueno, eso es un error frecuente que se puede cometer en C.
3860/3600; es una división de enteros, y por lo tanto el resultado en un entero float aux = 3860/3600; convierte el valor entero de la división a float, por lo tanto no tiene decimales... Y, entonces?... Pues debemos convertir antes a float uno o los dos operandos, desde ese momento el compilador asume que el resultado debe ser float: Código:
float aux = (float)3860/3600; |
Otra nueva
Alguien me podria ayudar ya que deseo que la salida sea por ejemplo:
1,2345 y no 1.2345 :confused: es decir que el decimal salga en coma y no en punto, por ejem usando la salida cout y/o printf. gracias de antemano :) |
Hola,
No estoy seguro, pero, creo que puedes utilizar la variable global "DecimalSeparator", de modo que puedes cambiarla por una "coma", en lugar de un "punto", que es como viene de forma predeterminada. Prueba a ver qué tal. ;) |
uhmm... aun me queda la duda. :rolleyes:
por ahi encontre que usando LOCALE la hacia, pero habra una forma mas sencilla? |
Pues tendrias que usar un poco la imaginacion por ejemplo:
int d; float a; AnsiString b,c; a=StrToFloat(Edit1->Text)*StrToFloat(Edit2->Text);//primero transformas a float los datos de los edit y haces la operasion b=FloatToStr(a);//segundo transformas la operacion en String d=b.Pos(".");//Tercero buscas con pos la ubicasion del punto c=b.SubString(1,d-1)+","+b.SubString(d+1,b.Length());//4 partes en dos el resultado para suprimir el punto y cambiarlo por el caracter que se te antoje Label1->Caption=c;//y quinto lo muestras en un label Esto es solo un ejemplo, espero te sirva. |
La franja horaria es GMT +2. Ahora son las 05:19:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi