Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Suma de 2 Reales (https://www.clubdelphi.com/foros/showthread.php?t=55318)

lKinGl 14-04-2008 05:30:33

Suma de 2 Reales
 
Estoy intentando hacer una suma de 2 números reales pero da error al colocar el decimal

Tengo un formulario con:

edit1=n1=Número 1
edit2=n2=Número 2
edit3=n3=Total

Boton Calcular
Boton Cerrar

el Boton Calcular declaré las variables tipo Double el cual son las nombradas anterior mente n1,n2,n3

y estoy haciendo esto en el boton calcular:
Código Delphi [-]
 
n1:=strtofloat(edit1.text);
n2:=strtofloat(Edit2.text);
n3:=n1+n2;
edit3.text:=floattostr(n3);

cuando sumo 1+2 da el resultado 3

cuando sumo 1.5 +2 da el error

pueden ayudarme??

Gracias Adelantadas

Al González 14-04-2008 05:43:34

¡Hola!

Cita:

Empezado por lKinGl (Mensaje 279768)
...cuando sumo 1.5 +2 da el error

pueden ayudarme??...

¡Claro que podemos ayudarte! Pero primero ayúdanos tú con algo esencialísimo: ¿qué mensaje de error es el que te aparece?

Y de paso dinos cómo está la configuración regional de tu sistema operativo.

Saludos.

Al.

lKinGl 14-04-2008 05:46:09

Gracias Al González

en el edit1 puse 1.5 y en el edit2 puse 0


y el error es este:

"1.5 is not a valid floating point value"

Delphius 14-04-2008 05:51:02

Hola lKinGl,
Tu problema se debe a que el sistema está esperando una coma y no el punto como separador decimal.

La solución ya la he dicho en otra ocasión.

Y una solución alternativa es cambiar en la configuración reginal el simbolo decimal y te olvidas de problemas.

Saludos,

lKinGl 14-04-2008 05:53:02

Correcto Delphius Gracias ... eso era probe con la coma (,) y problema solucionado ahora quisiera saber como puedo evitar que la gente que use el software no ponga el punto y a su vez que tampoco se permita usar letras??

lKinGl 14-04-2008 06:23:18

o tambien puede ser que cuando la persona presione la tecla punto el programa lo tome como si se hubiese presionado la tecla coma..

lKinGl 14-04-2008 06:32:00

gracias adelantadas!!

lKinGl 14-04-2008 06:44:17

..............

defcon1_es 14-04-2008 13:00:43

Código Delphi [-]
SysUtils.DecimalSeparator := ',';
n1:=strtofloat(edit1.text);n2:=strtofloat(Edit2.text);
n3:=n1+n2;
edit3.text:=floattostr(n3);

Para controlar que los usuarios no tecleen letras, te recomiendo que uses
componentes TMaskEdit en vez de TEdit.
Le pones una máscara en su propiedad EditMask, y el componente se encarga de validar lo que teclean los usuarios.


La franja horaria es GMT +2. Ahora son las 04:32:03.

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