Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-02-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Poder: 16
lmpadron Va por buen camino
float con coma (,) o punto (.)

Saludos

Hola comunidad, estoy realizando un programilla de la siguiente forma tengo dos edits en uno el usuario inserta un numero de tipo float, despues yo lo resto contra otro float que defino directamente dentro del codigo y asigno el resultado al segundo edit.

El primer edit recibe el número y en su evento KeyPress hago lo siguiente
Código:
void __fastcall TForm6::DBEdit9KeyPress(TObject *Sender, char &Key)
{
  if(Key == '.')
  {
     Key = ',';
  }
}
sustituyo los puntos en caso de que el usuario lo presione por comas para poder calcular sin que me de error

En el evento Change lo siguiente
Código:
void __fastcall TForm6::DBEdit9Change(TObject *Sender)
{           
           float a,b,c;
           b = Round(StrToFloat(Edit1->Text),2);
           c = 7.33;

           if (b == c)
           {
                DBEdit2->Text = "0";
           }
           else
           {
                if (b > c)
                {
                        MessageDlg("Upsss lo siento !!!!, el número A es mayor al numero B",mtInformation, TMsgDlgButtons() << mbOK, 0);
                }
                else
                {
                        a = c - b;
                        Edit2->Text = FloatToStr(Round(a,2));
                }
           }
}
El otro es que al insertarse el valor en el edit 1 necesito sustituir los puntos por comas para que no me de error. En mi pc me funciona correctamente de la forma en que aqui lo expongo o sea usando como separador para el decimal la coma y de hecho si pongo un punto me devuelve un error diciendo que no es un valor flotante valido, sin embargo en las pc donde lo pruebo necesita todo el tiempo como separador para los decimales el punto.

En conclusion :
1 En mi pc el separador decimal es la coma, de otra forma a error en la conversion.

2 En la otra pc el separador decimal es el punto. De otra forma da error.

3 Al asignar un valor en el codigo a la variable C tengo que hacerlo usando como separador decimal el punto sino tampoco en mi pc funciona o sea da error.

Pregunta
Cual es el separador decimal en c, el punto o la coma?

P.D.
Realmente no entiendo como puede funcionar bien el mismo codigo en una pc y en otra no.

Gracias de antemano por su respuesta
__________________
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: 22-02-2012 a las 21:07:35.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Convertir coma en punto lucho1981 SQL 2 22-04-2009 23:47:06
Coma presionando punto.. Delfino Varios 2 20-10-2007 11:47:11
cambiar el punto por la coma carlosll Varios 6 12-04-2007 19:11:57
Sustituir punto por coma Carlos Arevalo Varios 3 13-10-2005 23:19:40
xml punto coma carlomagno Varios 2 06-09-2004 11:49:35


La franja horaria es GMT +2. Ahora son las 01:42:28.


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
Copyright 1996-2007 Club Delphi