PDA

Ver la Versión Completa : Tipos de Datos Incompatibles?


martini002
19-05-2012, 05:44:41
Saludos,

Hoy he iniciado con Delphi 7
y pues he visto algunos post que me han ayudado
a familiarizarme con este lenguaje y que pues me han servido bastante
pero en esta oportunidad, quiero compartir con ustedes
una confusion que tengo.

He estado haciendo algunas pruebas y algunos
cambios pero realmente no he logrado arreglar este codigo
pueden ustedes ver algo que yo desconozco?
porque no entra a la condicion?

gracias por su apoyo
Best,
Martin


[Error] AreaRectangulo.pas(40): Incompatible types




procedure TForm1.Image2Click(Sender: TObject);
Var
Base, Altura, Area : Word;
begin
Base:=StrToInt(BoxBase.text);
Altura:=StrToInt(BoxAltura.text);
If Base > 0 and Altura > 0 Then // AQUI EL ERROR
Begin
Area:=Base*Altura;
BoxArea.Text:=inttostr(Area);
End
Else
Begin
ShowMessage('Valores Incorrectos');
End
end;

maeyanes
19-05-2012, 06:07:18
Hola...


if (Base > 0) and (Altura > 0) then // Hay que encerrar cada condición entre paréntesis



Saludos...

ecfisa
19-05-2012, 06:19:49
Hola martini002 y bienvenido a Club Delphi :)

Como a todos los que se inician te invitamos a que leas nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php).

Cuando en una estructura de decisición evaluas mas de una expresión lógica mediante nexos conjuntivos, disyuntivos o negativos, debes encerrar cada una de las expresiones entre paréntesis, en tu caso:

If (Base > 0) and (Altura > 0) Then


Otro ejemplo:

if (a > b) or ( (b < c) and (d > 15) ) then


Saludos.

Edito: Ups! me colgué con un llamado y no ví tu mensaje maeyanes, disculpas. :o

martini002
19-05-2012, 08:27:39
Excelente,

increible como no pude ver eso,
inclusive lo llegue a pensar y coloque los parentesis
pero en al conjunto completo, :D
muchas gracias por la ayuda,
de seguro volvere a consultarles algo muy pronto
espero contribuir en algo tambien a la comunidad

Best,
Martin