DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Syntaxe WLangage / Types du WLangage
  • Valeur par défaut
  • Codage binaire des réels
  • Séparateur des milliers
  • Problèmes de précision avec les réels
  • Spécificités PHP
  • Différences avec WINDEV/WEBDEV 5.5
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Réel (Type de variable)
En anglais : Real
Le type Réel permet de réaliser des calculs sur des valeurs réelles en utilisant jusqu'à 15 chiffres significatifs. La précision des décimales n'est pas assurée.
Pour effectuer des calculs précis, utilisez le type "Monétaire".
Le type Réel est un type nullable. Pour plus de détails, consultez Activation des types nullables.
Exemple
Num1 est un réel
Syntaxe
<Nom de la variable> est un réel

<Nom de la variable 1>, <Nom de la variable 2> sont des réels
<Nom de la variable> :
Nom de la variable à déclarer. Cette variable sera de type réel (réel sur 8 octets). Un réel peut avoir jusqu'à 15 chiffres significatifs. La valeur d'un réel correspond à :
  • Valeur minimale : 1.7*10-308
  • Valeur maximale : 1.7*10+308
<Nom de la variable> est un réel sur 4 octets

<Nom de la variable 1>, <Nom de la variable 2> sont des réels sur 4 octets
<Nom de la variable> :
Nom de la variable à déclarer. Cette variable sera un réel sur 4 octets. Un réel sur 4 octets peut avoir jusqu'à 6 chiffres significatifs.
Valeur d'un réel sur 4 octets correspond à :
  • Valeur minimale : 3.4*10-38
  • Valeur maximale : 3.4*10+38
Universal Windows 10 AppAndroidWidget AndroidJava Ce type n'est pas supporté. Il est remplacé par un réel.
Remarques

Valeur par défaut

Une variable de type "Réel" déclarée et non initialisée est égale à 0.

Codage binaire des réels

Les réels ont tous le même nombre de chiffres significatifs (15).
Si le résultat d'un calcul sur des réels met en jeu plus de 15 chiffres significatifs, ce résultat sera automatiquement arrondi à 15 chiffres significatifs. Pour obtenir une précision plus importante, utilisez le type Monétaire ou Numérique.

Séparateur des milliers

Il est possible d'utiliser le caractère 'Espace' ou le caractère '_' comme séparateur de milliers dans les nombres. Par exemple :
num1 est un réel
num1 = 123 456.478

num2 est un réel
num2 = 7_014.478

Problèmes de précision avec les réels

Les opérations avec le type "réel" ne sont pas précises du fait de la représentation informatique des réels.
Deux réels qui sont égaux au sens mathématique ne le sont pas forcément en informatique et les opérateurs ">", "<" ou "=" peuvent renvoyer des résultats "faux" au sens mathématique.
Pour pallier une partie de ces problèmes :
  • l'opérateur "=" est précis à 10e-6 près sur les réels. Ainsi pour deux réels relativement proches, les opérateurs "=" et ">" (ou bien "=" et "<") peuvent renvoyer Vrai pour les mêmes valeurs.
  • la conversion des réels en chaîne utilise un algorithme complexe. C'est pourquoi, généralement, l'affichage par la trace est correct.
Pour éviter tous ces problèmes, il faut utiliser le type Monétaire ou Numérique qui utilise une représentation mémoire exacte.
PHP

Spécificités PHP

Les nombres (réel, entier, monétaires, numériques) ne peuvent dépasser 14 chiffres significatifs en PHP. S'ils dépassent cette limite, ils sont arrondis à 14 chiffres.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsCode Utilisateur (MCU)

Différences avec WINDEV/WEBDEV 5.5

Les types de réels ont été modifiés entre WINDEV/WEBDEV 5.5 et WINDEV/WEBDEV 2024 :
Type de réels
en version 5.5
Type de réels
en version 2024
RéelRéel sur 4 octets
Réel TurboPlus disponible
Réel DoubleRéel

Par défaut, avec WINDEV ou WEBDEV 5.5, les réels étaient des réels sur 4 octets. Par défaut, avec WINDEV ou WEBDEV 2024, les réels sont des réels sur 8 octets.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 06/03/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale