[Tutoriel]Guide du débutant - Partie 2 Variables

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Tutoriel]Guide du débutant - Partie 2 Variables

Message par J8B le Jeu 13 Aoû - 17:39

2)Apprendre à utiliser des variables
a)Deux types et leurs limites
Nous avons d'abord les variables dites numériques dont la fonction est d'avoir en mémoire un
nombre, et les variables alphanumériques qui gardera en mémoire un texte ou une suite de caractères.
Une variable numérique s'écrira avec des lettres, par exemple:
X et GUIDE seront numériques.
Une variable alphanumérique s'écrira aussi avec des lettres mais se terminera avec le caractère $,
par exemple:
X$ et GUIDE$ seront alphanumériques.

Pour leur assigner une valeur, rien de plus simple, on utilisera le symbole égal =
Code:
X=2:GUIDE$="J'ai 1 cerveau."

Vous pouvez aussi les afficher avec ? comme avec le texte :
Code:
?X
affichera la valeur 2

Code:
?GUIDE$
affichera la valeur J'ai 1 cerveau.

Mais ces variables ont leur limites, d'après le manuel, une variable numérique ne peut avoir
pour valeur que de -524287 à 524287, et les variables alphanumériques ne peuvent avoir pour valeur
que 256 caractères.
Et un programme ne peut avoir que 2048 variables maximum, ceci pouvant être vérifié avec la
commande FREEVAR.

b)Groupes de variables
Ce sont des variables ayant le même nom mais différenciées avec un ou deux numéros entre parenthèses.
(dites respectivement à 1 ou 2 dimensions).
Elles doivent d'abord être déclarées une seule fois avec la commande DIM suivi du nom du groupe et du nombre d'éléments
du groupe entre parenthèses:
Code:
DIM GUIDE$(4)
déclarera les variables alphanumériques GUIDE$(0) GUIDE$(1) GUIDE$(2) GUIDE$(3)

Code:
DIM MAP(2,3)
déclarera les variables numériques MAP(0,0) MAP(0,1) MAP(0,2) MAP(1,0) MAP(1,1) MAP(1,2)

Code:
DIM X(2),Y$(2)
déclarera les variables X(0) X(1) Y$(0) Y$(1)

Comme vous le voyez plusieurs groupes peuvent être déclarés avec DIM en les séparant par une virgule, et le nombre d'éléments
sera compté à partir de zéro (c'est pour ça que 4 donnera 0 1 2 3)
Un groupe de variable sera compté comme 1 variable. (FREEVAR)
(en anglais on les appelle array)
Attention les groupes de variables ont une limite d'éléments maximum, ça reste un peu flou de la connaître mais d'après le manuel
elle serait de 32768 éléments.

c)Manipulation des variables
Plusieurs commandes peuvent affecter les valeurs des variables :
SWAP permet d'échanger les valeurs de deux variables
Code:
X=1+1:Y=0:SWAP X,Y
?X,Y
affichera 0  2

Code:
X$="jour":Y$="Bon":SWAP X$,Y$
?X$;Y$
affichera Bonjour

SORT permet de classer dans l'ordre croissant les valeurs de groupes de variables à 1 dimension.
Il sera suivi d'un nombre symbolisant la variable de départ, puis du nombre d'éléments à classer,
et enfin du ou des noms de groupes de variables.
Code:
X(0)=7:X(1)=4:X(2)=9
SORT 0,3,X
?X(0),X(1),X(2)
affichera 4  7  9

RSORT fait l'inverse de SORT
Code:
RSORT 0,3,X
?X(0),X(1),X(2)
affichera 9  7  4

Cette fois-ci, voici les commandes qui transforment les valeurs de variables, vous vous appercevrez
qu'elles seront très utiles pour passer de l'affichage de vos variables à des calculs mathématiques:
VAL suivi d'une variable alphanumérique entre parenthèses, transforme sa valeur en valeur
numérique uniquement si elle contient des numéros sinon les lettres seront transformées en zéro.
Code:
? VAL("FAUX")
 affichera 0

Code:
? VAL("23")
 affichera 23

Code:
X$="0123":X=VAL(X$):?X
 affichera 123

STR$ suivi d'un nombre ou d'une variable numérique entre parenthèses, transforme la valeur
en valeur alphanumérique.
Code:
? STR$(23)
 affichera 23

Code:
X=23:X$="0"+STR$(X):?X$
 affichera 023

d)Et ça s'efface ?
Les variables peuvent être vidées de la mémoire, pour cela on utilise la commande CLEAR.
Toutes les variables et groupes seront effacés, par exemple:
Code:
DIM X(7):CLEAR:DIM X(15)
ne provoquera aucune erreur de double déclaration.


e)Maintenant faites des tests !!!
Si vous avez eu du mal à comprendre, entraînez vous à essayer les commandes qui vous posent problèmes.
N'hésitez pas à mélanger et compliquer les valeurs de vos variables comme par exemple X=VAL("0023")*2.
Sachez qu'une commande qui a pour résultat une valeur peut être assignée à une variable de son type.
(C'est le cas par exemple de STR$ mais pas de SORT)

< PARTIE 1  - SOMMAIRE -  PARTIE 3 >

_________________
Statut (MàJ:29 Avril 2017): Sur le projet "Virtual Bébête" (avancée ~26%).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 402
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum