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 du moment : -28%
Brandt LVE127J – Lave-vaisselle encastrable 12 ...
Voir le deal
279.99 €

Partagez | 
 

 [Ruby] Cours n°1 : Les variables

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°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyVen 16 Mar 2007 - 23:40

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, bierre..), 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, reel), ou les chaines (caracteres, phrases)


En algorythme, pour faire un Whysky coca

Code:
Fonction : Boire_un_WhiskyCoca

Variables :
  maBouteille_Whysky contient du liquide
  maBouteille_Coca contient du liquide
  monVerre contient du liquide

Début :
 | maBouteille_Whysky <- Whisky
 | maBouteille_Coca <- Coca
 | monVerre <- maBouteille_Whysky + maBouteille_Coca
 |
 | Boire monVerre
Fin
ou bien, plus simple :
Code:
Fonction : Boire_un_WhiskyCoca

Variables :
  monVerre contient du liquide

Début :
 | monVerre <- Coca + Whisky
 |
 | 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 :
Code:
def Additionner

  monEntier = 153
  monReel = 20.42
  monResultat = monEntier + monReel
 
  Afficher( MonResultat )
End

Afficher est une fonction permettant d'afficher la variable, pour le moment, on a pas besoin de s'occuper de son fonctionnement.

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)
maVariable5 = nil; sera un Type Nil, qui n'est pas initialisé (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:
Code:
def Additionner

  monEntierChaine = "153" # de type chaine
  monReelNombre = 20.42
  monResultat = monEntierChaine.to_i + monReelNombre  # mon résultat de type réél
 
  AfficherUneChaine( 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 ^_^


Dernière édition par le Jeu 22 Mar 2007 - 22:11, édité 1 fois
Revenir en haut Aller en bas
http://www.tonyryudev.com
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°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyJeu 22 Mar 2007 - 19:54

Je me permet une question: Tu parles à un moment de



Tonyryu a écrit:

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)

Donc la cinquième variable ne sera pas pris en compte. Si on en met six ou plus, celles en trop seront ignorées comme la cinquième variable?
Et si on veut mettre plusieurs variables dans un même paragraphe, en considérant que tu répondes oui à la question précédente, comment mettre plus de variable dans le paragraphe?
Revenir en haut Aller en bas
http://www.pokecardex.com
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°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyJeu 22 Mar 2007 - 22:10

Je constate qu'une erreur c'est glissé, il faut remplacer
maVariable5 ; sera un Type Nil, qui n'existe pas (source d'erreur fréquente)
par ceci
maVariable5 = nil; sera un Type Nil, qui n'est pas initialisé (source d'erreur fréquente)

Je corrige le premier post

le nom de la variable ne sert qu'a s'y retrouver dans du code de programmation, j'aurais pu les appeler : toto, titi, tutu que ça ne changerai pas grand chose.

Le fait que dans mon explication une variable initialisé à nil, ne veut pas dire que l'on ne peut pas l'utiliser, c'est justement là, qu'est la source d'erreur, car peu de chose sont faisable avec un objet 'nil', ce qui génére une erreur.

voici un exemple qui permet de voir l'erreur :
Code:
begin
  maVar = nil
  maVarAutre = 3
  resultat = maVar + maVarAutre
 
  print resultat
 
end
-> Undefined method `+' for nil:NilClass

alors que
Code:
begin
  maVar = nil
  maVarAutre = 3
  maVar = 6
  resultat = maVar + maVarAutre
 
  print resultat
 
end
donnera l'affichage de 9

en espérant que cela soit un peu plus clair. Mais il ne faut surtout pas hésiter à utiliser RPGmaker pour faire des tests.
Revenir en haut Aller en bas
http://www.tonyryudev.com
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°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyVen 23 Mar 2007 - 16:53

Donc, si j'ai bien compris, il faut cinq lignes dès le moment où on met une variable.
Revenir en haut Aller en bas
http://www.pokecardex.com
Gyom
Atome
Atome


Messages : 6
Date d'inscription : 07/05/2007

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

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyMar 8 Mai 2007 - 10:43

Moi j'aurais une question à propos des variables.

Je me suis rendu compte qu'il existait plusieurs types de variables.

Certaines précédées par @ ou $ ou rien.

Quelle est la sinification de ces symboles, est-ce bien des variables. Je pense que certaines sont pour préciser les variables "temporaires" et d'autres pour celle utilsable par tous les scripts

Suis-je sur la bonne voie ? Peut-on mieux m'expliquer ?
Revenir en haut Aller en bas
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°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyMar 8 Mai 2007 - 11:20

Les symboles @ et $ qui préfixe les variables sont des identifiants de porté.

Une variable qui n'a pas de porté ne sera visible que dans la fonction ou elle est initialisé, une fois que l'on sort de la fonction l'espace mémoire utilisé par la variable est libéré, la variable n'existe plus. Quant il y'a @ devant, cela correspond à une variable de classe, c'est a dire que la variable est acessible par toutes les fonctions d'une classe, elle est créé lors de sa première initialisation dans la classe, et est détruite lorsque l'objet de classe est détruit. Quant aux variables préfixées de $, elles sont globales au projet et sont donc accessible partout.
Revenir en haut Aller en bas
http://www.tonyryudev.com
Gyom
Atome
Atome


Messages : 6
Date d'inscription : 07/05/2007

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

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyMar 8 Mai 2007 - 11:21

Merci beaucoup pour ces précisions, j'ai vraiment compris maintenant.
Revenir en haut Aller en bas
Scythe Darklight
Scythe Darklight


Masculin Messages : 1020
Age : 35
Loisirs : Comme tout le monde ici, Rpg maker, jeuxvidéo, musique...
Date d'inscription : 24/12/2006

Caractéristiques du membre
Evolution: Atome
Job: Tous sauf ruby et Dialogues
XP:
[Ruby] Cours n°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyMar 19 Juin 2007 - 7:21

Moi j'ai pas trop compris pourquoi dans ça
Code:
def Additionner

  monEntierChaine = "153" # de type chaine
  monReelNombre = 20.42
  monResultat = monEntierChaine.to_i + monReelNombre  # mon résultat de type réél
 
  AfficherUneChaine( MonResultat.to_s ) # La fonction affiche une chaine, on transtype le résultat
End
Tu met to to_i et to_s.

Ca sert a quoi de changer une chaine en nombre si c'est pour la remettre en chaine a la fin ?
Revenir en haut Aller en bas
http://scythedarklight.heavenforum.com/
Thrax37
Matière
Matière
Thrax37


Masculin Messages : 302
Age : 32
Loisirs : On se le demande... Qu'est-ce que je fais là ?
Date d'inscription : 01/11/2006

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

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyMer 20 Juin 2007 - 19:02

C'est obligatoire pour effectuer les calculs et gérer l'affichage.

En effet, la valeur de la variable monEntierChaine est une chaine de caractère :
Code:
monEntierChaine = "153"

c'est pourquoi, pour effectuer le calcul d'après, il faut convertir la chaine de caractère en integer : "153" -> 153

puis, plus tard, pour afficher la valeur de la variable monResultat, il faut le convertir en chaine de caractère pour l'afficher à l'écran :
Code:
monResultat.to_s
où la valeur obtenue par le calcul, contenue dans la variable, passe de integer à string pour être afficher.
Revenir en haut Aller en bas
coldragon
Molécule
Molécule
coldragon


Masculin Messages : 57
Age : 28
Date d'inscription : 09/01/2007

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

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyLun 25 Juin 2007 - 16:55

Moi j'ai pas compris les cours (Je c pas par koi fauscommencer koi faire) je comprend rien niette touse se que j'ai compris c'est t pour un autre truc
Code:
 begin
    print "Salut sa va les gen"
    print "A la la la"
end
C'est pas vaudre faute mes c moi avec le truc de verre de wiski et autre heu je seche un peu si on pouvait mexpliquer en tant réelle

merci
Revenir en haut Aller en bas
Tyler
Embryon
Embryon
Tyler


Masculin Messages : 976
Age : 34
Loisirs : Oulah, y'a pas assez de place.
Date d'inscription : 20/06/2007

Caractéristiques du membre
Evolution: Atome
Job: J'excelle partout difficile a choisir
XP:
[Ruby] Cours n°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyLun 25 Juin 2007 - 17:06

essaye de faire un peu plus attention a ton orthographe s'il te plait, je suis aml placé pour te dire cela car je suis nouvea mais ça ferait déjà mieux pour ta demande
Revenir en haut Aller en bas
http://www.Tyler-est-le-meilleur.com
Azurean
Azurean


Masculin Messages : 2524
Age : 31
Date d'inscription : 02/10/2006

Caractéristiques du membre
Evolution: Atome
Job: Les scripts et les évènements
XP:
[Ruby] Cours n°1 : Les variables Left_bar_bleue-42/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (-42/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyLun 25 Juin 2007 - 18:46

Coldragon, fais attention à ton orthographe!

Les variables servent à stocker des nombres. Et à partir de ces variables, tu peux faire des additions, des soustractions...

Exemple:

Code:
variable1 = 12 #la variable 1 est égale à 12
variable2 = 6  #la variable 2 est égale à 6
variable3 = variable1 + variable2  #variable3 est égale à l'addition de la variable 1 et de la variable 2

En fait, les variables remplacent n'importe quel nombre. Il faut simplement leur donner une nombre auquel être égal, exemple variablelol = 15

Les variables peuvent aussi stocker des chaînes de caractères, des mots en somme...
Il faut alors mettre des guillemets: variablemdr = "salut toi"
Revenir en haut Aller en bas
http://www.zarok-rpgmaker.com
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°1 : Les variables Left_bar_bleue20/20[Ruby] Cours n°1 : Les variables Empty_bar_bleue  (20/20)

[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables EmptyMer 5 Sep 2007 - 14:09

Je peux dificilement faire plus simple en explication, c'est c**çit, imagé, écrit correctement, ponctué d'exemple et d'exercice.

A ba après c'est sur, faut un peu mettre du sien est réfléchir 5 min, faire des tests, comprendre ces erreurs et savoir les corrigés, ça ne se fait pas non plus en 30s. As-tu essayer de faire un projet rpgmaker complétement vierge en effaçant tous les scripts et d'en faire un seul pour faire les tests, contenant juste

Code:

var = 3
var = var +8
print var
var += 5
print var

etc...
Revenir en haut Aller en bas
http://www.tonyryudev.com
Contenu sponsorisé



[Ruby] Cours n°1 : Les variables Empty
MessageSujet: Re: [Ruby] Cours n°1 : Les variables   [Ruby] Cours n°1 : Les variables Empty

Revenir en haut Aller en bas
 

[Ruby] Cours n°1 : Les variables

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

 Sujets similaires

-
» [Ruby] Cours n°7 : Boucle For
» [Ruby] Cours n°2a : Les tableaux (Partie 2)
» [Ruby] Cours n°2 : Les tableaux
» [Ruby] Cours n°4 : structure if
» [Ruby] cours n°8 : Fonctions et procédures
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: