Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
me ha pasado que cuando se utilizo cadenas (con numeros) para comparaciones, se genera algun tipo de inconsistencia

trata de pasar las cadenas a numero

Código Delphi [-]
 
if (strtoint(npromedio.Text)>=0) and (strtoint(npromedio.Text)<=34,99) then
begin
npromedio.Text:='0'
end
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #2  
Antiguo 27-06-2011
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Me genera un error de tipos no compatibles

Código:
[DCC Error] Evaluacion.pas(684): E2008 Incompatible types
Aposi:

Es "100" ese numero es el resultado de la suma de otros...las otras formas ya las he intentado y nada que resulta, sin embargo si coloco SOLO:

Código Delphi [-]
if (npromedio.Text=100)  then
begin
npromedio.Text:='4'
end


Ahi si me escribe "4"
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."

Última edición por ZiriusB fecha: 27-06-2011 a las 15:58:35.
Responder Con Cita
  #3  
Antiguo 27-06-2011
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Cita:
Empezado por oscarac Ver Mensaje
me ha pasado que cuando se utilizo cadenas (con numeros) para comparaciones, se genera algun tipo de inconsistencia

trata de pasar las cadenas a numero

Código Delphi [-]
 
if (strtoint(npromedio.Text)>=0) and (strtoint(npromedio.Text)<=34,99) then
begin
npromedio.Text:='0'
end
Me genera un error

Código:
[DCC Error] Evaluacion.pas(684): E2008 Incompatible types
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."
Responder Con Cita
  #4  
Antiguo 27-06-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
no sera 34.99 en lugar de 34,99?
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #5  
Antiguo 27-06-2011
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Cita:
Empezado por oscarac Ver Mensaje
no sera 34.99 en lugar de 34,99?
Creo que es por esto:

Código Delphi [-]
npromedio.text := Floattostr(StrToFloat(edit13.Text) +  StrToFloat(edit14.Text));

Es una linea que tengo antes de el primer codigo que pase...
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."
Responder Con Cita
  #6  
Antiguo 27-06-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Me genera un error
Código:
[DCC Error] Evaluacion.pas(684): E2008 Incompatible types
Hola.

El error sucede en esta línea:
Código Delphi [-]
if (strtoint(npromedio.Text)>=0) and (strtoint(npromedio.Text)<=34,99) then

Y es por que npromedio.Text puede asumir un valor real, por lo tanto la comparación correcta es:
Código Delphi [-]
if (StrToFloat(npromedio.Text) >= 0) and (StrToFloat(npromedio.Text) <= 34,99) then

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 27-06-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
bueeeeeenoooo
la cosa estaba por ahi gracias ecfisa
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #8  
Antiguo 27-06-2011
ZiriusB ZiriusB is offline
Miembro
 
Registrado: oct 2010
Posts: 86
Poder: 14
ZiriusB Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

El error sucede en esta línea:
Código Delphi [-]
if (strtoint(npromedio.Text)>=0) and (strtoint(npromedio.Text)<=34,99) then

Y es por que npromedio.Text puede asumir un valor real, por lo tanto la comparación correcta es:
Código Delphi [-]
if (StrToFloat(npromedio.Text) >= 0) and (StrToFloat(npromedio.Text) <= 34,99) then

Saludos.

Código Delphi [-]
if (StrToFloat(npromedio.Text)>=0) and (StrToFloat(npromedio.Text)<=34.99) then
npromedio.Text:='0';

Exacto, lo cambie en todos y listo...ademas de cambiar la "," por el "."

Gracias amigos...
__________________
"Ningun precio es alto por el privilegio de ser uno mismo..."

Última edición por ZiriusB fecha: 27-06-2011 a las 17:35:02.
Responder Con Cita
Respuesta



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
Ordenar digitos de menor a mayor luisito2011 Varios 18 06-05-2011 23:37:59
¿como hago para comprobar si un nº de versión es mayor o menor? cocute Varios 8 21-01-2010 11:31:13
Fecha de mayor a menor alcides Varios 2 15-02-2008 16:46:09
FireBird.- Domino que sea entero mayor o igual a cero sakuragi Firebird e Interbase 1 08-09-2006 11:10:09
ordenar un DBGrid de mayor a menor jmlifi Varios 2 03-11-2005 16:36:34


La franja horaria es GMT +2. Ahora son las 19:21:59.


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