Vous êtes sur la page 1sur 3

Programmation Ruby/Exemples de code — Wikilivres https://fr.wikibooks.

org/wiki/Programmation_Ruby/Exemples_de_code

Tous ces exemples peuvent être testés directement dans irb. Il existe une version web d'irb pour tester Ruby dans un
navigateur : TryRuby (http://tryruby.org/).

Objets
Les nombres sont des objets. Pour obtenir la valeur absolue de -12 :

-12.abs

La taille d'une chaîne de caractères :

"Ruby est un langage dérivé de Perl et Python!".length

Trier un tableau et l'inverser :

[ 1, 42, 5, 12, 6, 8 ].sort.reverse

Table de hachage :

dangers = { "eau" => "mouille", "feu" => "brule" }


puts "L'eau, ça " + dangers["eau"]

Blocs et itérateurs
Saluer 10 fois :

10.times do
puts "Salutations !"
end

Afficher le carré de chaque nombre d'un tableau :

[1, 2, 5, 8].each do |x|


puts( x * x )
end

Obtenir un tableau contenant la racine carrée de quelques nombres :

racines = [2, 45, 999].map { |x| Math.sqrt(x) }

Trier des chaines de caractères en fonction de leur taille :

1 sur 3 11/08/2018 à 23:15


Programmation Ruby/Exemples de code — Wikilivres https://fr.wikibooks.org/wiki/Programmation_Ruby/Exemples_de_code

[ "Bonjour", "Ruby", "Tic Tac" ].sort_by { |chaine| chaine.length }

Structures
Création d'une structure Livre :

Livre = Struct.new "Livre", :titre, :auteurs, :isbn


pickaxe = Livre.new "Programming Ruby", ["Dave Thomas", "Andrew Hunt"], "0-201-71089-7"
puts pickaxe.titre

Classes
1. Création d'une classe Bibliotheque qui stocke des livres

class Bibliotheque

# Accès direct au tableau de livres


attr_reader :livres

# Méthode appelée à la création d'un objet bibliothèque qui initialise le tableau de


livres
def initialize
@livres = []
end

# Ajoute un livre à la bibliothèque, s'il n'y est pas déjà


def ajouter livre
raise "Le livre #{livre} est déjà dans la bibliothèque" if @livres.include? livre
@livres << livre
end

# Retourne le nombre de livres dans la bibliothèque


def taille
@livres.length
end

# Retourne la liste des auteurs ayant écrit ou co-écrit au moins un livre dans la
bibliothèque
def auteurs
@livres.map { |livre| livre.auteurs }.flatten.uniq
end
end

1. Création de la bibliothèque

biblio = Bibliotheque.new

1. Ajout du livre créé plus haut

biblio.ajouter pickaxe

2 sur 3 11/08/2018 à 23:15


Programmation Ruby/Exemples de code — Wikilivres https://fr.wikibooks.org/wiki/Programmation_Ruby/Exemples_de_code

1. Ajout d'un autre livre

biblio.ajouter Livre.new("Ruby on Rails", ["Dave Thomas", "David Heinemeier Hansson"],


"2-212-11746-9")

1. Affichage de la liste des auteurs

puts "Auteurs : " + biblio.auteurs.join(", ")

Qui affichera

Dave Thomas, Andrew Hunt, David Heinemeier Hansson

Récupérée de « https://fr.wikibooks.org/w/index.php?title=Programmation_Ruby/Exemples_de_code&oldid=567855 »

La dernière modification de cette page a été faite le 20 août 2017 à 16:00.

Les textes sont disponibles sous licence Creative Commons attribution partage à l’identique ; d’autres termes peuvent
s’appliquer.
Voyez les termes d’utilisation pour plus de détails.

3 sur 3 11/08/2018 à 23:15