Section courante

A propos

Section administrative du site

Les expressions

Vous avez déjà vu certaines des façons dont le ZX Spectrum peut calculer avec des nombres. Il peut effectuer les quatre opérations arithmétiques +, -, * et / (rappelez-vous que * est utilisé pour la multiplication et / est utilisé pour la division), et il peut trouver la valeur d'une variable, étant donné son nom. L'exemple :

  1. LET tax=sum*15/100

donne juste un indice du fait très important que ces calculs peuvent être combinés. Une telle combinaison, comme sum=15/100, s'appelle une expression : une expression n'est donc qu'une manière abrégée de dire à l'ordinateur de faire plusieurs calculs, l'un après l'autre. Dans notre exemple, l'expression sum=15/100 signifie «rechercher la valeur de la variable appelée "sum", la multiplier par 15 et diviser par 100».

Récapituler : Les multiplications et les divisions sont faites en premier. Ils ont une priorité plus élevée que l'addition et la soustraction. L'une par rapport à l'autre, la multiplication et la division ont la même priorité, ce qui signifie que les multiplications et les divisions se font dans l'ordre de gauche à droite. Lorsqu'elles sont traitées, les additions et les soustractions viennent ensuite - celles-ci ont à nouveau la même priorité les unes que les autres, nous les faisons donc dans l'ordre de gauche à droite. Bien que tout ce que vous ayez vraiment besoin de savoir soit si une opération a une priorité supérieure ou inférieure à une autre, l'ordinateur le fait en ayant un nombre entre 1 et 16 pour représenter la priorité de chaque opération : * et / ont la priorité 8, et + et - ont la priorité 6.

Cet ordre de calcul est absolument rigide, mais vous pouvez le contourner en utilisant des parenthèses : tout ce qui est entre parenthèses est évalué en premier, puis traité comme un seul nombre.

Les expressions sont utiles car, chaque fois que l'ordinateur attend un nombre de votre part, vous pouvez lui donner une expression à la place et il trouvera la réponse. Les exceptions à cette règle sont si peu nombreuses qu'elles seront énoncées explicitement dans tous les cas. Vous pouvez ajouter autant de chaînes de caractères (ou de variables de chaîne de caractères) que vous le souhaitez dans une seule expression, et si vous le souhaitez, vous pouvez même utiliser des crochets.

Nous devons vraiment vous dire ce que vous pouvez et ne pouvez pas utiliser comme noms de variables. Comme nous l'avons déjà dit, le nom d'une variable chaîne de caractères doit être une seule lettre suivie de $ ; et le nom de la variable de contrôle d'une boucle FOR - NEXT doit être une seule lettre ; mais les noms des variables numériques ordinaires sont beaucoup plus libres. Ils peuvent utiliser n'importe quelles lettres ou chiffres tant que le premier est une lettre. Vous pouvez mettre des espaces dans un nom pour faciliter la lecture, mais ils ne compteront pas dans le nom. De plus, cela ne fait aucune différence pour le nom que vous le tapiez en majuscules ou en minuscules.

Voici quelques exemples de noms de variables autorisés :

  1. X
  2. t42
  3. ce nom est si long que je ne pourrai plus jamais le retaper sans me tromper
  4. maintenant nous sommes six
  5. mainteNANTnousSommesSix

Ceux-ci ne sont pas autorisés à être des noms de variables :

Exemple de nom non autorisés Remarque
2001 Il commence par un chiffre
3 ours Commence par un chiffre
P*U*R*E*E N'est ni une lettre ni un chiffre
Arena-Tremblay N'est ni une lettre ni un chiffre

Les expressions numériques peuvent être représentées par un nombre et un exposant. Essayez ce qui suit pour prouver cet aspect :

  1. PRINT 2.34e0
  2. PRINT 2.34e1
  3. PRINT 2.34e2

et ainsi de suite jusqu'à :

  1. PRINT 2.34e15

Vous verrez qu'après un certain temps, l'ordinateur commencera également à utiliser la notation scientifique. En effet, pas plus de quatorze caractères peuvent être utilisés pour écrire un nombre. De même, essayez :

  1. PRINT 2.34e-1
  2. PRINT 2.34e-2

et ainsi de suite. PRINT ne donne que huit chiffres significatifs d'un nombre. Essayer :

  1. PRINT 4294967295,4294967295-429e7

Cela signifie que l'ordinateur peut contenir les chiffres de 4294967295, même s'il n'est pas prêt à les afficher tous en même temps.

Le ZX Spectrum utilise l'arithmétique à virgule flottante, ce qui signifie qu'il sépare les chiffres d'un nombre (sa mantisse) et la position du point (l'exposant). Ce n'est pas toujours exact, même pour les nombres entiers. Taper :

  1. PRINT 1e10+1-1e10,1e10-1e10+1

Les nombres sont maintenus avec une précision d'environ neuf chiffres et demi, donc 1e10 est trop grand pour être tenu exactement comme il faut. L'imprécision (en fait environ 2) est supérieure à 1, donc les nombres 1e10 et 1e10+1 semblent égaux à l'ordinateur.

Pour un exemple encore plus particulier, tapez :

  1. PRINT 5e9+1-5e9

Ici, l'imprécision en 5e9 n'est que d'environ 1, et le 1 à ajouter est en fait arrondi à 2. Les nombres 5e9+1 et 5e9+2 apparaissent à l'ordinateur comme étant égaux.

Le plus grand nombre entier (nombre entier) pouvant être tenu avec précision est 1 moins que 32 2 multipliés ensemble (ou 4 294 967 295).

La chaîne de caractères "" sans aucun caractère est appelée la chaîne de caractères vide ou nulle. N'oubliez pas que les espaces sont significatifs et qu'une chaîne de caractères vide n'est pas la même chose qu'une chaîne de caractères ne contenant que des espaces.

Essayer :

  1. PRINT "Avez-vous deja termine "Le Tour du monde en quatre-vingts jours" ?"

Lorsque vous appuyez sur ENTER, vous obtenez le point d'interrogation clignotant indiquant qu'il y a une erreur quelque part dans la ligne. Lorsque l'ordinateur trouve les guillemets doubles au début de "Le Tour du monde en quatre-vingts jours", il imagine que ceux-ci marquent la fin de la chaîne de caractères "avez-vous terminé", et il ne peut alors pas déterminer ce que signifie "Le Tour du monde en quatre-vingts jours". Il existe un dispositif spécial pour surmonter cela : chaque fois que vous souhaitez écrire un guillemet de chaîne au milieu d'une chaîne de caractères, vous devez l'écrire deux fois, comme ceci :

  1. PRINT "Avez-vous deja termine ""Le Tour du monde en quatre-vingts jours"" ?"

Comme vous pouvez le voir sur ce qui est affiché à l'écran, chaque double guillemet n'est vraiment là qu'une seule fois ; il vous suffit de le taper deux fois pour le faire reconnaître.



Dernière mise à jour : Mercredi, le 19 avril 2023