Imprimer
Catégorie : Cours Ruby / RGSS
Affichages : 160

Ce cours explique ce qu'est une variable, comment l'initialiser et comment commencer à l'utiliser.


Les variables, en premier lieu, comme son nom l'indique, c'est quelque chose qui change.

Je vais, pour simplifier la compréhension, dire qu'une variable c'est comme une bouteille, on peut y mettre n'importe quoi. Liquide (eau, Cola..), poudre (farine, sucre, sel...)

Jusque là, logiquement, tout va bien.

Je veux une bouteille contenant de l'eau, je vais lui donner un nom me permettant de ne pas la confondre avec les autres bouteilles "maBouteille_Eau"

On peut donc dire, en terme de programmation, que la variable "maBouteille_Eau" est de type 'Liquide' et qu'elle contient de l'eau. Mais attention : une fois que l'on a mis un liquide dedans, on ne peut mettre que du liquide, impossible d'y mettre du solide.

En ruby, les types simples que l'on utilise pour des variables, sont les nombres (entiers, réel), ou les chaines (caractères, phrases)

 

En algorythme, pour faire un Whysky coca

 

Code
Fonction : Boire_un_sirop_fraise

Variables :
maBouteille_siropFraise contient du liquide
maBouteille_eau contient du liquide
monVerre contient du liquide

Début :
| maBouteille_siropFraise <- Sirop_fraise
| maBouteille_eau <- eau
| monVerre <- maBouteille__siropFraise + maBouteille__eau
|
| Boire monVerre
Fin

 

ou bien, plus simple :

Code
Fonction : Boire_un_sirop_fraise

Variables :
monVerre contient du liquide

Début :
| monVerre <- Sirop_fraise + eau
|
| Boire monVerre
Fin



Boire peut être considéré comme une action (une autre Fonction)

Maintenant on va passer ça avec des entiers, on veut faire une adition de deux variables :

en algo :

Code
Fonction : Additionner

Variables :
monEntier est un entier
monReel est un reel
monResultat est un reel

Début :
| monEntier <- 153
| monReel <- 20.42
| monResultat <- monEntier + monReel
|
| Afficher MonResultat
Fin


Ce qui nous affiche 173.42


Maintenant la même chose en Ruby :

(Ruby)
1
2
3
4
5
6
7
8
def additionner
  
monEntier 153
  
monReel 20.42
  
monResultat monEntier monReel


  print MonResultat
end



Vous constatez que le type de variable n'est pas définit lors de sa création, mais seulement lors de son initialisation :

maVariable1 = -150 ; sera un entier
maVariable2 = 15.23 ; sera un réel
maVariable3 = "Ma petite Phrase" ; sera une chaine de caractére
maVariable4 = "45" ; sera une chaine de caractére (attention)
maVariable5 ; sera un Type Nil, qui n'existe pas (source d'erreur fréquente)

Il faut bien faire attention car manipuler des variables de types diférents dans un calcul ou une conquatanétion, engendrera des erreurs.


Il existe des commandes pour transtyper des variables, les plus courantes sont 'to_i' et 'to_s' :
- to_i permet de changer une chaine en nombre
- to_s permet de changer un nombre en chaine

exemple:

(Ruby)
1
2
3
4
5
6
7
8
def additionner

  
monEntierChaine "153" # de type chaine
  
monReelNombre 20.42
  
monResultat monEntierChaine.to_i monReelNombre  # mon résultat de type réél

  
print monResultat.to_s # La fonction affiche une chaine, on transtype le résultat
end


Ce sont déjà des petites bases à avoir absolument pour les variables.

Il existe des fonctions avancées pour modifier les chaines, mais cela n'est pas l'objectif du premier cours ^_^