Conversão Real ==gt; Inteiro

Delphi

22/07/2003

Olá pessoal, estou tentando localizar o ponto inicial de uma reta na metade da altura do form através da função [i:243dcd30f4]moveto[/i:243dcd30f4]. O problema é que esta função só assume valores inteiros, e a divisão [i:243dcd30f4](form1.height)/2[/i:243dcd30f4] pode retornar valores quebrados.
Na compilação tenho o seguinte erro: [i:243dcd30f4]Incompatible types: ´Integer´ and ´Real´.


Alguém sabe como resolver esse problema :?: [/i:243dcd30f4]


Dan.sm

Dan.sm

Curtidas 0

Respostas

Cebikyn

Cebikyn

22/07/2003

Na verdade, a divisão em questão não pode gerar números quebrados, pois o operador [b:e437bb19b5]/[/b:e437bb19b5] não pode ser usado em operações com [b:e437bb19b5]integer[/b:e437bb19b5] (o que gera o erro), para corrigir, deve ser usado o operador [b:e437bb19b5]div[/b:e437bb19b5], logo a sua divisão seria reescrita da seguinte forma:
form1.height div 2


a divisão resultará em um número inteiro [b:e437bb19b5]sempre[/b:e437bb19b5] (pois será arredondado).

Já a pergunta título do tópico, real=> inteiro:
Real := inteiro; // ou
Inteiro := Trunck(Real);



GOSTEI 0
POSTAR