AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / WLanguage / Sintaxis WLanguage / 
  • Valor predeterminado
  • Codificación binaria de reales
  • Separador de miles
  • Problemas de precisión con el tipo Real
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
El tipo Real permite realizar cálculos con valores reales utilizando hasta 15 dígitos significativos. Este tipo puede presentar problemas de precisión.
Para cálculos precisos, utilice el tipo "Currency".
El tipo Real admite valores Null. Para obtener más información, consulte Permitir tipos que admiten valores Null.
Ejemplo
Num1 is real
Sintaxis
<Variable name> is real

<Variable name 1>, <Variable name 2> are reals
<Variable name>:
Nombre de la variable a declarar. Esta variable será un real de 8 bytes. Un real puede contener hasta 15 dígitos significativos. El valor de un real corresponde a:
  • Valor mínimo: 1.7*10-308
  • Valor máximo: 1.7*10+308
<Variable name> is 4-byte real

<Variable name 1>, <Variable name 2> are 4-byte reals
<Variable name>:
Nombre de la variable a declarar. Esta variable será un real de 4 bytes. Un real de 4 bytes puede contener hasta 6 dígitos significativos.
El valor de un real de 4 bytes corresponde a:
  • Valor mínimo: 3.4*10-38
  • Valor máximo: 3.4*10+38
Universal Windows 10 AppAndroidWidget Android Este tipo no es compatible. Se sustituye por un real.
Observaciones

Valor predeterminado

Una variable de tipo "Real" declarada y no inicializada es igual a 0.

Codificación binaria de reales

Todos los reales contienen el mismo número de dígitos significativos (15).
Si el resultado de un cálculo realizado con números reales tiene más de 15 dígitos significativos, se redondeará automáticamente a 15 dígitos significativos.. Para una mayor precisión, utilice el tipo Currency o Numeric.

Separador de miles

Se pueden utilizar espacios y guiones bajos para separar miles. Por ejemplo:
num1 is real
num1 = 123 456.478

num2 is real
num2 = 7_014.478

Problemas de precisión con el tipo Real

Las operaciones con el tipo "Real" no son precisas debido a la representación de los números reales en la memoria.
Dos reales que son iguales en matemáticas no son necesariamente iguales en informática, los operadores ">", "<" o "=" pueden devolver resultados "falsos" matemáticamente hablando.
Para resolver algunos de estos problemas:
  • el operador "=" alcanza una precisión de 10e-6 en los reales. Por lo tanto, para dos números reales relativamente cercanos, los operadores "=" y ">" (o "=" y "<") pueden devolver True para los mismos valores.
  • la conversión de valores reales en cadenas utiliza un algoritmo complejo. Por eso, en la mayoría de los casos, los datos que se muestran en la traza son correctos.
Para evitar estos problemas, utilice el tipo Currency o Numeric, que utiliza una representación de memoria exacta.
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 03/04/2024

Señalar un error o enviar una sugerencia | Ayuda local