Zarok RPG Maker
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
AccueilDernières imagesS'enregistrerConnexion
Le deal à ne pas rater :
Pokémon EV06 : où acheter le Bundle Lot 6 Boosters Mascarade ...
Voir le deal

Partagez | 
 

 [Ruby] Cours n°2 : Les tableaux

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Tonyryu
Matière
Matière
Tonyryu


Masculin Messages : 221
Age : 43
Loisirs : Making, Paintball, jeux video
Date d'inscription : 20/11/2006

Caractéristiques du membre
Evolution: Atome
Job:
XP:
[Ruby] Cours n°2 : Les tableaux Left_bar_bleue20/20[Ruby] Cours n°2 : Les tableaux Empty_bar_bleue  (20/20)

[Ruby] Cours n°2 : Les tableaux Empty
MessageSujet: [Ruby] Cours n°2 : Les tableaux   [Ruby] Cours n°2 : Les tableaux EmptyVen 16 Mar 2007 - 23:42

Ce cours, vous montre comment fonctionne un tableau de variables et les piéges à éviter.


Donc reprenons, l'histoire de nos bouteilles, un tableau ç'est comme un pannier comportant plusieur bouteille de n'importe quel type (liquide, solide..).
La seule diférence c'est que l'on a un nom pour le pannier, mais pas pour les bouteilles, elles sont dans le pannier, dans un ordre stricte qui ne bougera pas, donc pas besoin de connaitre leur nom, si on connait le nom du pannier et de la position de la bouteille dans ce pannier, c'est emplement suffisant.

On peut avoir autant de bouteilles que l'on veut dans ce pannier.

Exemple, je prend mon pannier de bouteille vide qui contiennent des liquides, on va les remplir.

En Algorythme :
Code:
Fonction : RemplirMesBouteilles

Variables :
  monPannier est un pannier de bouteille liquide
  monVerre contient du liquide

Début :
 | monPannier[0] <- Jux d'orange
 | monPannier[1] <- Eau
 | monPannier[2] <- Bierre
 | monPannier[3] <- Vin Rouge
 | monVerre <- monPannier[0] + monPannier[1]
 |
 | Boire monVerre
Fin

J'obtiens un verre de jus d'orange dilué avec de l'eau.

Vous constatez une chose flagrante, c'est que la premiere bouteille du pannier est considéré comme la bouteille 0... Pourquoi pas la bouteille 1.

Je vais tenter de vous expliquer cette bizarerie, Attention, c'est des notions de programmation bas niveau (fonctionnement interne) :
Quelque soit la variable, cela reste un endroit sur votre disque dur, où est inscrit une information, dont le type permet de connaitre la place que l'information prend en terme d'octet. Un tableau dans la mémoire, se sont donc, plusieurs informations de même type qui sont écrites à la suite, le nom du tableau défini la position de la première information stocké, ensuite il faut se décalé pour atteindre les autres informations.
Dans mon exemple de pannier, c'est comme si on me disait, va prendre une bouteille, hop, j'attrape directement la premiere, si je veux la deuxieme, je décale 1 fois le nombre que l'on met entre crochet pour un tableau correspond au décalage à effectué.

Ce qu'il faut retenir c'est que le premier élément du tableau a l'index 0 et que son nom est son adresse mémoire

Petit exemple d'addition en ruby, avec des tableaux :

Code:
def Additionner
  tabReel = [12, 34, -24, 0.25, -3.75]  # là, le tableau est typé Reel

  monResultat = tabReel[1] + tabReel[4]
end
monResultat est égale à 30.25

Je le répete encore une fois, faites très attention à l'index du tableau, ne pas savoir ce repérer dedans, c'est une grande source d'erreur.
Cela marche de la même façon, pour tous les types de variable.


* Exercices, ceux qui veulent les faires, envoyez moi vos réponses par MP, à chaque exo, il s'agit de trouver la valeur de la variable 'monResultat'

Exo 1 :
Code:
def Exercice
  monTableau = []  # Attention, initialisé, mais pas typé
  tabEntier = [-50, 21, 12, 2, -8, -25]
  tabReel = [1.5, 2.8, 3.7, 2.6]

  monTableau[0] = tabReel[1]
  monTableau[1] = tabEntier[2]

  monResultat = monTableau[0] + monTableau[1]

end

Exo 2 :
Code:
def Exercice
  monTableau = []  # Attention, initialisé, mais pas typé
  tabEntier = [2,3,4,5,6,7]
  tabReel = [1.5, 2.8, 3.7, 2.6, 7.5, 4.1, 1.8, 2.2]

  monResultat = tabReel[ tabEntier[3] ]

end

Exo 3 :
Code:
def Exercice
  tabChaine = ["1", "21", "-23"]
  maVariable = 15.7

  monResultat = tabChaine[2].to_i - maVariable

end


Voilu, voilu

Prochain cours, les booleens et les équations logiques.
Revenir en haut Aller en bas
http://www.tonyryudev.com
.:PIXOU:.
Atome
Atome
.:PIXOU:.


Masculin Messages : 15
Age : 30
Loisirs : Plein
Date d'inscription : 03/02/2007

Caractéristiques du membre
Evolution: Atome
Job: Graphiste/maping(débutant)
XP:
[Ruby] Cours n°2 : Les tableaux Left_bar_bleue20/20[Ruby] Cours n°2 : Les tableaux Empty_bar_bleue  (20/20)

[Ruby] Cours n°2 : Les tableaux Empty
MessageSujet: Re: [Ruby] Cours n°2 : Les tableaux   [Ruby] Cours n°2 : Les tableaux EmptyDim 16 Mar 2008 - 15:38

sans déconner je comprend rien, alors que sa a l'aire simple
Revenir en haut Aller en bas
http://yaure.skyblog.com/
Zero
Zero


Masculin Messages : 1755
Age : 32
Loisirs : Fight, Drink and Fuck
Date d'inscription : 26/04/2007

Caractéristiques du membre
Evolution: Atome
Job: La fête !
XP:
[Ruby] Cours n°2 : Les tableaux Left_bar_bleue20/20[Ruby] Cours n°2 : Les tableaux Empty_bar_bleue  (20/20)

[Ruby] Cours n°2 : Les tableaux Empty
MessageSujet: Re: [Ruby] Cours n°2 : Les tableaux   [Ruby] Cours n°2 : Les tableaux EmptyDim 16 Mar 2008 - 21:30

HO!
Un necro post de an jour pour jour!
C'est pas très malin!
Tu aurait pus demander une autorisation auprès d'un admin!
Revenir en haut Aller en bas
Zarmakuizz
Zarmakuizz


Masculin Messages : 5155
Age : 34
Loisirs : Mon biz'
Date d'inscription : 24/09/2006

Caractéristiques du membre
Evolution: Atome
Job: Faire des passes éclair
XP:
[Ruby] Cours n°2 : Les tableaux Left_bar_bleue20/20[Ruby] Cours n°2 : Les tableaux Empty_bar_bleue  (20/20)

[Ruby] Cours n°2 : Les tableaux Empty
MessageSujet: Re: [Ruby] Cours n°2 : Les tableaux   [Ruby] Cours n°2 : Les tableaux EmptyLun 17 Mar 2008 - 18:37

Le cours commence par une présentation théorique, afin de bien visualiser la chose, et finit par des lignes de code utilisables en évènement.


Il est vrai que le langage ruby est plus facile à comprendre quand on a déjà vu un autre langage de programmation, car le ruby est (en résumant de manière barbare) un langage de programmation comme un autre, il est seulement plus technique à apprendre.


Les exercices sont un bon moyen de comprendre. Si tu ne comprends pas un exercice, il te suffit de relire la leçon de la page, ou la(les) leçon(s) précédente(s) si c'est nécessaire.


Je dos avouer que le niveau de cette leçon n'est pas compliqué: le tableau sert à contenir plusieurs variables. Ça aide à ranger. On peut considérer un réfrigérateur: c'est plus facile d'y ranger de la nourriture s'il y a des étages (et on peut en rentrer plus) que s'il n'y en a pas.
Revenir en haut Aller en bas
http://www.pokecardex.com
Contenu sponsorisé



[Ruby] Cours n°2 : Les tableaux Empty
MessageSujet: Re: [Ruby] Cours n°2 : Les tableaux   [Ruby] Cours n°2 : Les tableaux Empty

Revenir en haut Aller en bas
 

[Ruby] Cours n°2 : Les tableaux

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

 Sujets similaires

-
» [Ruby] Cours n°2a : Les tableaux (Partie 2)
» [Ruby] Cours n°6 : Boucle Loop do et while
» [Ruby] Cours n°1 : Les variables
» [Ruby] Cours n°4 : structure if
» [Ruby] Cours n°7 : Boucle For
Page 1 sur 1

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

 :: TUTORIELS :: Tutoriels de Programmation
-
Sauter vers: