Page 1 of 1

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Mon Aug 07, 2023 2:17 pm
by Manuel Aranda
¿Has probado a usar esto?

Code: Select all | Expand


 if (nIngEfe-nEgrEfe) == nTotArq

 

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Mon Aug 07, 2023 3:33 pm
by carlos vargas
Para comparar números usa la función

Code: Select all | Expand

round(num1,2)==round(num2,2)
 

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Tue Aug 08, 2023 2:52 am
by José Camilo
Muchas gracias Manuel y Carlos.

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Tue Aug 08, 2023 4:45 am
by albeiroval
carlos vargas wrote:Para comparar números usa la función

Code: Select all | Expand

round(num1,2)==round(num2,2)
 
Carlos yo tambien utilizo tu codigo para comparar dos valores numericos, lo que no entiendo es porque no se puede hacer de manera simple :

Code: Select all | Expand

num1 := 15.25
num2 := 15.25

if num1 == num2   // if round(num1,2)==round(num2,2)
   ? "Iguales"
else 
  ? "no iguales"  <------- Siempre retorna esto 
endif 
 

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Tue Aug 08, 2023 6:25 am
by carlos vargas
Creo es por que en los números los decimales podrían ser

15.25000001 == 15.2500012 //falso

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Tue Aug 08, 2023 8:32 am
by Antonio Linares
Asi funciona bien:

Code: Select all | Expand

   if ( 15.25000001 - 15.2500012 ) != 0 
      ? "si"
   endif

Re: Diferencia entre 2 números iguales. Por Que?

Posted: Thu Aug 10, 2023 4:52 pm
by FranciscoA
Intenta de esta manera:
if Str( nIngEfe-nEgrEfe, 12,2) == Str( nTotArq, 12,2)