PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Type de réels
  • Notes
  • 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/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Type de réels
Le WLangage propose deux types de réels :
  • Réel
Réel sur 8 octets
Un réel peut avoir 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".
Valeur d'un réel :
  • Valeur minimale : 1.7*10-308
  • Valeur maximale : 1.7*10+308
  • Réel sur 4 octets
Réel sur 4 octets
Un réel sur 4 octets peut avoir jusqu'à 6 chiffres significatifs. La précision des décimales n'est pas assurée. Pour effectuer des calculs précis, utilisez le type "Monétaire".
Valeur d'un réel sur 4 octets :
  • Valeur minimale : 3.4*10-38
  • Valeur maximale : 3.4*10+38
AndroidWidget AndroidUniversal Windows 10 AppJava Ce type n'est pas supporté. Il est remplacé par un réel.
Notes

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.
Versions 23 et supérieures

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
Nouveauté 23

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

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 24 :
Type de réels
en version 5.5
Type de réels
en version 24
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 24, 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