Variables et calculs
Donner un nom à une valeur pour la réutiliser, la modifier et faire des dessins paramétrables
§1.Qu'est-ce qu'une variable ?
Une variable est une étiquette que tu colles sur une valeur, pour pouvoir la réutiliser sans la réécrire à chaque fois. C'est comme noter dans un cahier « x = 42 » : à partir de maintenant, quand tu écris x, ça vaut 42.
Pourquoi c'est utile ? Imagine que tu dessines un polygone à 6 côtés avec une longueur de 50. Si tu veux changer pour 7 côtés et 80 pixels, tu dois modifier 14 nombres dans ton code. Avec des variables, tu changes UNE seule ligne.
Une variable porte un nom de ton choix (pas d'espaces, pas d'accents, commence par une lettre). Bonnes pratiques : utilise des noms PARLANTS — taille plutôt que t, nombre_cotes plutôt que n.
§2.Les 2 façons de déclarer une variable
- let — variable modifiable
- let crée une variable que tu peux changer plus tard. Sa valeur évolue au cours du programme.
- const — variable fixe
- const crée une constante : sa valeur ne peut PAS être modifiée après. Utile pour les paramètres importants de ton dessin que tu ne veux pas changer accidentellement.
let taille = 50avancer(taille) // avance de 50 taille = 100 // on change la valeuravancer(taille) // avance de 100Avec let, on peut donner une nouvelle valeur après la déclaration.
const cotes = 6const taille = 60 for (let i = 0; i < cotes; i++) { avancer(taille) tourner_droite(360 / cotes)}Pour changer pour un octogone, tu modifies UNIQUEMENT la première ligne. Le reste du code reste identique. C'est le pouvoir des variables : un code paramétrable.
§5.Les opérations mathématiques
- + (addition)
- a + b donne la somme.
- Exemple. 5 + 3 vaut 8. Marche aussi pour coller des chaînes : "bon" + "jour" donne "bonjour".
- - (soustraction)
- a - b donne la différence.
- Exemple. 10 - 4 vaut 6.
- * (multiplication)
- a * b donne le produit. Attention : on n'écrit JAMAIS 2x ou xy en code, toujours 2 * x ou x * y.
- Exemple. 7 * 8 vaut 56.
- / (division)
- a / b donne le quotient (résultat décimal possible).
- Exemple. 7 / 2 vaut 3.5.
- % (modulo, le reste)
- a % b donne le reste de la division entière de a par b. Très utile pour alterner couleurs ou comportements.
- Exemple. 10 % 3 vaut 1 (car 10 = 3×3 + 1). 8 % 2 vaut 0 (pair).
§6.Modifier une variable en boucle
Le vrai pouvoir d'une variable apparaît quand tu la modifies à chaque tour de boucle. Tu peux faire grandir une forme, faire varier la couleur, créer une spirale…
let taille = 5 for (let i = 0; i < 40; i++) { avancer(taille) tourner_droite(90) taille = taille + 4 // grandit à chaque tour}§8.Raccourcis pratiques
- x += 5
- Raccourci pour x = x + 5. Idem pour -= (soustrait), *= (multiplie), /= (divise).
- x++
- Raccourci pour x = x + 1. C'est exactement ce qu'on utilise dans le for : i++.
- x--
- Raccourci pour x = x - 1.
let taille = 5 for (let i = 0; i < 40; i++) { avancer(taille) tourner_droite(90) taille += 4 // équivalent à taille = taille + 4}§10.Le hasard avec aleatoire()
SunuCode te propose deux fonctions pour générer du hasard, très utiles pour faire de l'art génératif (jamais deux dessins identiques) :
§11.Fonctions de hasard
- aleatoire(min, max)
- Renvoie un nombre à virgule entre min et max.
- Exemple. aleatoire(0, 360) → un angle au hasard entre 0 et 360°. aleatoire(10, 50) → une distance.
- aleatoire_entier(min, max)
- Renvoie un nombre ENTIER entre min et max (inclus).
- Exemple. aleatoire_entier(1, 6) simule un dé. aleatoire_entier(0, 4) tire un index entre 0 et 4.
for (let i = 0; i < 50; i++) { avancer(aleatoire(20, 60)) tourner_droite(aleatoire(0, 360))}§13.Les tableaux : stocker une liste
Un tableau (array en anglais) est une liste ordonnée de valeurs, stockées dans une seule variable. Utile pour grouper plusieurs valeurs liées : une liste de couleurs, une liste de tailles…
const couleurs = ["red", "blue", "green", "orange", "purple"] for (let i = 0; i < 50; i++) { // i % 5 donne 0, 1, 2, 3, 4, 0, 1, 2... à chaque tour couleur(couleurs[i % 5]) avancer(20) tourner_droite(72)}couleurs[0] vaut "red", couleurs[1] vaut "blue", etc. On commence à 0 (pas à 1) — c'est la convention. Le modulo % nous permet de cycler dans la liste sans dépasser sa taille.
À retenir
- let crée une variable modifiable, const une constante.
- Une variable bien nommée vaut mieux qu'un commentaire.
- +, -, *, / pour calculer. % donne le reste — utile pour alterner.
- x += 5 et x++ sont des raccourcis pour x = x + 5 et x = x + 1.
- aleatoire(min, max) et aleatoire_entier(min, max) pour du hasard.
- Les tableaux ["a", "b"] stockent des listes, accessibles par index à partir de 0.