GARANTIR DESCONTO

Fórum Verificar se variável é Decimal #499241

27/10/2014

0

Pessoal, to precisando de uma ajuda. Eu to fazendo um programa pra calcular equações de 2º grau. O programa está praticamente pronto, porém na hora de apresentar o resultado, preciso verificar se o número é decimal ou não.

if (<condição>) then
lbl5.Caption := FloatToStr(X1)
else
lbl5.Caption := FloatToStr(X1) + '/' + FloatToStr(2*A);


if (<condição>) then
lbl6.Caption := FloatToStr(X2)
else
lbl6.Caption := FloatToStr(X2) + '/' + FloatToStr(2*A);

Se o valor da divisão for decimal, preciso mostrar em forma de fração. Exemplo:
Se X1 / (2*A) = 7,333 tenho que apresentar 22 / 3. Porém de for inteiro (21 / 3 = 7), é só apresentar.
Preciso de ajuda pra criar essa <condição>.

Desde já, obrigado pela ajuda.
Heitor Batista

Heitor Batista

Responder

Post mais votado

28/10/2014

Buenos,

Valida com Trunc(). Se for igual ao valor sem Trunc() é inteiro, senão, é decimal.

if (Trunc(X1) = X1) then
  lbl5.Caption := FloatToStr(X1)
else
  lbl5.Caption := FloatToStr(X1) + '/' + FloatToStr(2*A);


Abraççç,
Renato

Renato Rubinho

Renato Rubinho
Responder

Gostei + 3

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar