Accueil du SiteAccueil du Site  AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  ConnexionConnexion  S'enregistrerS'enregistrer  



Le deal à ne pas rater :
Pokémon Évolutions Prismatiques : coffrets et dates de sortie de ...
Voir le deal

Partagez
 

 Cour n°1 Ruby-Les bases: Types d'expressions

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Dhamma Metta
Chevalier Dragon (niveau 5)
Chevalier Dragon (niveau 5)
Dhamma Metta

Masculin
Messages postés : 1897
Date d'inscription : 22/06/2011
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140039 / 10039 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

Cour n°1 Ruby-Les bases: Types d'expressions  Membre10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Action10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyDim 25 Sep 2011 - 18:26

Bonjour, voici un premier cours sur le langage Ruby.  

                                                                       
     PRÉLUDE
Pour commencer, sachez que je vais en premier lieu parler du langage Ruby et non  le RGSS (qui en découle).
Pour tester les codes durant les cours et pour vous entraîner, je vous suggère de créer un nouveau projet sous RM (XP ou VX). Supprimez tous les scripts par défaut, même le Main.
RM sans ses scripts est un interpréteur qui pourra tester nos codes =).

                         
Cours 1 : Les différents types  d’expressions et leurs applications
Dans ce tout premier cours, je vais vous présenter les quelques types d’expressions que vous aurez l’occasion d’utiliser dans vos codes.
Il existe :
      +Les nombres (Fixnum)
       -Les entiers (Intergers)   Exemple : 5
       -Les décimaux ( Floats)    Exemples : 4.0 ; 6.21534

+Les chaînes de caractère (String)  Exemples : «Salut ! » ou « 45 »
/!\ Remarque : Les chaînes de caractères sont toujours définies par les guillemets ! 45 est différent de « 45 » !

A) Math & co
Nous allons voir les opérations possibles avec les nombres et les String.

1) Les Nombres

Voici quelques exemples de ce que l'on peut faire.

Code:

p 3+4           # Ceci affichera 7
p 7-3.0         # Ceci affichera 4.0
p 4*6           # Ceci affichera 24
p 8/5          # Ceci affichera 1
p 8/5.0         # Ceci affichera 1.6
p 8%5          # Ceci affichera 3
p 5**4.0       # Ceci affichera 625

Examinons tout ceci:
- L'expression "p" (ou print) est une méthode ( nous verrons ce que sont les méthodes ultérieurement) qui affiche la valeur de ce qui suit.

- Tout ce qui est après les # sont des commentaires. C'est à dire qu'ils n'ont aucun impact sur le fonctionnement du script, ils servent seulement à la compréhension, selon le bon vouloir du codeur, du script.

-Ici rien de bien compliqué. Les opérateurs " %" et "**" sont respectivement le modulo et la puissance. Le modulo donne le reste d'une fraction.

- Le plus important ici est la différence de résultats entre 8/5 et 8/5.0. Le bon résultat est 1.6 mais pourquoi alors 8/5 = 1 ?

===> Car vous avez tout simplement ordonner à l'ordinateur de donner le résultat de cette division tronqué à l'entier. Or dans 8/5.0, le terme 5.0 est un décimal.
Donc l'ordinateur fera :" Tient, cette fois-ci il me donne un décimal, je lui donne donc les valeurs après la virgule". Un ordinateur c'est bête, il vous donne le résultat selon la nature des termes même si c'est faux. Donc si vous voulez un résultat bon, pensez à mettre au moins un terme en décimal.

- Pour ce qui est de la priorité, c'est la même chose ici. Les termes dans les parenthèses doivent être calculés avant tout.

2) Les chaînes de Caractère

Nous pouvons utiliser des Strings dans des calculs mais sous certaines conditions dans certains cas.
Nous pouvons seulement additionner un strings avec d'autre string et multiplier un string avec un Fixnum.
Code:


p "Salut" + "Salut"       # Ceci affichera SalutSalut
p "Salut " + "Salut"      # Ceci affichera Salut Salut
p "Salut" + " Salut"      # Ceci affichera Salut Salut
p 4 * "salut"              # Ceci affichera Error
p "salut" * 4              # Ceci affichera salutsalutsalutsalut

Examinons tout ceci:

-Pour les additions, on assemble des chaînes avec d'autre chaînes. En revanche, pensez toujours à ajouter un espace entre chaque string sinon nous aurons un résultat comme la première addition.
RQ: Un espace dans des guillemets est considéré comme un caractère.

- Nos deux multiplications ont les mêmes termes, pourquoi nous avons une erreur pour l'une et non pour l'autre?

==> Dans une multiplication, la position des nombres importe peu. Il en va autrement pour des Strings.
En effet, là il faut lire (dans le langage humain) cette opération:

Code:
4 * "salut"
 
=> On peut traduire par: "On multiplie 4 par "salut"." Ceci est donc totalement illogique.


Code:
"salut" * 4
 
=> " On multiplie "salut" par 4. Ici on comprends que l'on a 4 fois le string "salut".

Ce que vous devez donc bien comprendre ici, c'est que la position des termes dans une multiplication est très importante si vous utilisez des chaînes de caractères. C'est le terme après le "*" qui joue le rôle du multiplicateur, ce qu'un string ne peut pas faire.

B) J'ai toujours voulu être un Fixnum....

Sous ce sous titre bizarre, ce cache une partie intéressante qu'est la "conversion de type"

Kézako?


La conversion de type se résume à plusieurs méthodes qui permet de changer une expression d 'un type en un autre type.

Voici la liste des convertisseur:

Code:

to_i  #Transforme l'expression en un Intergers (entier)
to_f  #Transforme l'expression en un Float (décimal)
to_s #Transforme l'expression en un String (Chaîne de caractère)
to_a #Transforme l'expression en un Array (tableau)

Voici quelques exemples:

Code:

 p "42".to_i # Affiche 42
 p "42".to_f # Affiche 42.0
 p "42".to_s # Affiche "42"
 p "42".to_a # Affiche [42]
 p "abc".to_i # Affiche 0
 p "abc".to_f # Affiche 0.0

Précision: Les deux dernières conversions affiche 0 car l'ordinateur ne sait pas transformer des caractères non numériques en nombre (nous également ^^), il met donc 0.

Voici pour ce premier cours, j'espère que vous comprendrez et n'hésitez pas à me poser des questions et à faire des critiques de ce cours (constructives bien entendu) pour que je puisse améliorer les prochains. Very Happy

Metroid_Prime
Revenir en haut Aller en bas
Invité
Invité
Anonymous


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyDim 25 Sep 2011 - 23:21

oui mais non... trop d'erreur et d'imprécision.
Revenir en haut Aller en bas
Dhamma Metta
Chevalier Dragon (niveau 5)
Chevalier Dragon (niveau 5)
Dhamma Metta

Masculin
Messages postés : 1897
Date d'inscription : 22/06/2011
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140039 / 10039 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

Cour n°1 Ruby-Les bases: Types d'expressions  Membre10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Action10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyDim 25 Sep 2011 - 23:52

C'est étonnant, mon impression d'avoir tendu le bâton pour me faire battre s'est révélé être exact... oui
Revenir en haut Aller en bas
Choco-sama
Ancien staffeux
Ancien staffeux
Choco-sama

Masculin
Messages postés : 3012
Date d'inscription : 19/10/2009
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140058 / 10058 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

Cour n°1 Ruby-Les bases: Types d'expressions  Game-d10
Cour n°1 Ruby-Les bases: Types d'expressions  Mappeu10
Cour n°1 Ruby-Les bases: Types d'expressions  Projet16
Cour n°1 Ruby-Les bases: Types d'expressions  Projet10
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Promot10
Cour n°1 Ruby-Les bases: Types d'expressions  Padago10
Cour n°1 Ruby-Les bases: Types d'expressions  Riche_10
Cour n°1 Ruby-Les bases: Types d'expressions  Travai10
Cour n°1 Ruby-Les bases: Types d'expressions  Mythe_10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 14:15

Moi ne connaissant rien au ruby, je vois le post de Metroid, ok puis ensuite Molok qui dit, erroné et imprécis. Je veux bien mais en quoi? J'aimerais un peu d'argumentation, ne serait que pour pouvoir modifier/ corrigé ce qu'à fait Metroid^^
Revenir en haut Aller en bas
Invité
Invité
Anonymous


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 19:32

Citation :
et non le RGSS (qui en découle).
Hum... Découler quand le RGSS est juste une librairie en Ruby.


Citation :
Cours 1 : Les différents types d’expressions et leurs applications
Tu es sur que le "Type d'expressions" est correct et que la rubrique est complète?


Citation :
2) Les chaînes de Caractère
Oui mais tu oublies d'autres manière de concatener

globalement, ce cours n'est pas du tout assez précis, car il ne parle de Ruby et de ses spécificité. Il se contente d'introduire des vagues concepts, avec quelques erreurs de voc.
Bon courage.
Revenir en haut Aller en bas
Dhamma Metta
Chevalier Dragon (niveau 5)
Chevalier Dragon (niveau 5)
Dhamma Metta

Masculin
Messages postés : 1897
Date d'inscription : 22/06/2011
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140039 / 10039 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

Cour n°1 Ruby-Les bases: Types d'expressions  Membre10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Action10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 19:54

Citation :
Tu es sur que le "Type d'expressions" est correct et que la rubrique est complète?

Je ne sais pas comment je pouvais appeler l'objet de mon cours, donc j'ai utilisé "type d'expression" car c'est ce qui se rapprochait le plus.

Citation :
Oui mais tu oublies d'autres manière de concatener

okay mais dit au moins lesquelles...
Revenir en haut Aller en bas
Invité
Invité
Anonymous


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 19:57

"test#{variable} lalallaal"
Revenir en haut Aller en bas
Dhamma Metta
Chevalier Dragon (niveau 5)
Chevalier Dragon (niveau 5)
Dhamma Metta

Masculin
Messages postés : 1897
Date d'inscription : 22/06/2011
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140039 / 10039 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

Cour n°1 Ruby-Les bases: Types d'expressions  Membre10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Action10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 19:59

OK.
Revenir en haut Aller en bas
Jin
Ancien staffeux
Ancien staffeux
Jin

Masculin
Messages postés : 8557
Date d'inscription : 08/12/2010
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140069 / 10069 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

G 1 petit zizi Very Happy
Nn C pa vré Sad
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Partag10
Cour n°1 Ruby-Les bases: Types d'expressions  Travai10
Cour n°1 Ruby-Les bases: Types d'expressions  Event-10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Riche_10
Cour n°1 Ruby-Les bases: Types d'expressions  Couhil10
Cour n°1 Ruby-Les bases: Types d'expressions  Nain_p11
Cour n°1 Ruby-Les bases: Types d'expressions  Connar10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 21:13

Faut prendre en compte que metroid débute, donc aide le au maximum molok Wink
Revenir en haut Aller en bas
Dhamma Metta
Chevalier Dragon (niveau 5)
Chevalier Dragon (niveau 5)
Dhamma Metta

Masculin
Messages postés : 1897
Date d'inscription : 22/06/2011
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140039 / 10039 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

Cour n°1 Ruby-Les bases: Types d'expressions  Membre10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Action10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 21:27

Dans un sens, sa réaction n'est pas déplacé. je pense qu'il doit se dire que comme je "débute", je n'ai pas à faire des petits cours pour les autres. Je voulais aider, mais si mes cours sont de mauvaises factures, mieux vaut arrêter dès maintenant, c'est mieux pour ce qui lisent. heureux
Revenir en haut Aller en bas
Jin
Ancien staffeux
Ancien staffeux
Jin

Masculin
Messages postés : 8557
Date d'inscription : 08/12/2010
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140069 / 10069 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

G 1 petit zizi Very Happy
Nn C pa vré Sad
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Partag10
Cour n°1 Ruby-Les bases: Types d'expressions  Travai10
Cour n°1 Ruby-Les bases: Types d'expressions  Event-10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Riche_10
Cour n°1 Ruby-Les bases: Types d'expressions  Couhil10
Cour n°1 Ruby-Les bases: Types d'expressions  Nain_p11
Cour n°1 Ruby-Les bases: Types d'expressions  Connar10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 21:31

Bah même si il manque peut être certain truc, il y a moyen qu'il comprenne pas mal de chose.
Ca permet de comprendre certaine base je pense.
Revenir en haut Aller en bas
Invité
Invité
Anonymous


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 21:37

Ce n'est pas qu'ils soient mauvais, je salue l'initiative et c'est mieux que ce beaucoup de personnes font.
Mais la programmation repose sur des règles strictes !
Revenir en haut Aller en bas
Jin
Ancien staffeux
Ancien staffeux
Jin

Masculin
Messages postés : 8557
Date d'inscription : 08/12/2010
Jauge LPC :
Cour n°1 Ruby-Les bases: Types d'expressions  891527140069 / 10069 / 100Cour n°1 Ruby-Les bases: Types d'expressions  8915271400

G 1 petit zizi Very Happy
Nn C pa vré Sad
Cour n°1 Ruby-Les bases: Types d'expressions  Membre15
Cour n°1 Ruby-Les bases: Types d'expressions  Partag10
Cour n°1 Ruby-Les bases: Types d'expressions  Travai10
Cour n°1 Ruby-Les bases: Types d'expressions  Event-10
Cour n°1 Ruby-Les bases: Types d'expressions  Altrui10
Cour n°1 Ruby-Les bases: Types d'expressions  Riche_10
Cour n°1 Ruby-Les bases: Types d'expressions  Couhil10
Cour n°1 Ruby-Les bases: Types d'expressions  Nain_p11
Cour n°1 Ruby-Les bases: Types d'expressions  Connar10


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyLun 26 Sep 2011 - 23:17

Alors corrige le et envoie lui.
Revenir en haut Aller en bas
Invité
Invité
Anonymous


Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  EmptyMar 27 Sep 2011 - 19:20

Jin a écrit:
Alors corrige le et envoie lui.
Lol, le ton impératif Smile
Revenir en haut Aller en bas
Contenu sponsorisé




Cour n°1 Ruby-Les bases: Types d'expressions  Empty
MessageSujet: Re: Cour n°1 Ruby-Les bases: Types d'expressions    Cour n°1 Ruby-Les bases: Types d'expressions  Empty

Revenir en haut Aller en bas
 
Cour n°1 Ruby-Les bases: Types d'expressions
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Table des types
» Plugin : Ajout de nouveaux types d'objets
» Les types de scripts quasi-obligatoires pour tout projet RM
» J'apprend le ruby [2]
» Petit cours sur le ruby [Partie1]

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Le Palais Créatif :: ~ APPRENTISSAGE ~ :: Initiation :: Systèmes-
Sauter vers: