villes = [ "Toulouse", "Paris", "Lille", "Nice" ] villes.sort.each do |ville| puts ville endRésultat:
C:\ruby\rubyscube>ruby iterator.rb Lille Nice Paris Toulouse
Ruby (le langage de programmation) et Rails. (made in Toulouse)
villes = [ "Toulouse", "Paris", "Lille", "Nice" ] villes.sort.each do |ville| puts ville endRésultat:
C:\ruby\rubyscube>ruby iterator.rb Lille Nice Paris Toulouse
adresses = [ [ 17, "Boulevard de la Sauvenière" ], [ 2, "Place de la République Française"], [ 19, "Rue de la Renaissance"] ] adresses += [ [ 3, "Rue de la paix" ] ] adresses -= [ [ 17, "Boulevard de la Sauvenière" ] ] puts adresses.sort
C:\ruby\rubyscube>ruby tableau_sort.rb 2 Place de la RÚpublique Franþaise 3 Rue de la paix 19 Rue de la Renaissance
nombres = [[0, "zero"], [1, "un"], [2, "deux"], [3, "trois"]] i = 0 while i < nombres.length j = 0 puts "-> Nombre: " while j < nombres[i].length puts nombres[i][j].to_s j += 1 end i += 1 end
C:\ruby\rubyscube>ruby tableaux_2dimensions.rb ->Nombre: 0 zero ->Nombre: 1 un ->Nombre: 2 deux ->Nombre: 3 trois
puts "Combien font 2 + 2" resultat = gets.chomp if (resultat.to_i == 4) puts "bon résultat" else puts "mauvais résultat" endRem: on peut aussi utiliser elsif dans certains cas (à utiliser avec parcimonie).
puts "Quel temps fait-il?" temps = gets puts "Je suis content d'apprendre qu'il fait: " + temps
C:\ruby\rubyscube>ruby question.rb Quel temps fait-il? beau Je suis content d'apprendre qu'il fait: beauRem: gets.chomp retire le \n (retour charriot) à la fin de la saisie.
print "ligne1\n" # commentaire 1 print "ligne2\n" # commentaire 2 print "ligne3"
C:\ruby\rubyscube>ruby commentaires.rb ligne1 ligne2 ligne3
C:\ruby\rubyscube>irb irb(main):001:0> Constante = "ma constante" => "ma constante" irb(main):002:0> Constante = "ma nouvelle constante" (irb):2: warning: already initialized constant Constante => "ma nouvelle constante"alors que dans le code suivant la variable n'est pas une constante donc ça marche:
irb(main):003:0> constante = "ma constante" => "ma constante" irb(main):004:0> constante = "ma nouvelle constante" => "ma nouvelle constante"Donc attention aux majuscules ça a de l'importance... Le mieux c'est de mettre tous les noms des constantes en majuscule, exemple:
irb(main):005:0> CONST = "ma constante" => "ma constante" irb(main):006:0> CONST = "ma constante2" (irb):6: warning: already initialized constant CONST => "ma constante2"
letter = "a" 26.times do print letter + " " letter = letter.next end
C:\ruby\rubyscube>ruby alphabet.rb a b c d e f g h i j k l m n o p q r s t u v w x y z
print "Bonjour\n".upcase print "Bonjour\n".downcase print "Bonjour\n".next print "BoNjOuR\n".swapcase print "Bonjour".reverse
C:\ruby\rubyscube>ruby string_methods.rb BONJOUR bonjour Bonjous bOnJoUr ruojnoB
irb(main):014:0> 192_500_400_300_200_100 => 192500400300200100 irb(main):015:0> 192_500_400_300_200_100 - 1 => 192500400300200099
C:/ruby/rubyscube>irb irb(main):001:0> 1 + 1 => 2 irb(main):007:0> 3-1 => 2 irb(main):008:0> 2*2 => 4 irb(main):012:0> 3.0 / 2.0 => 1.5C'est encore mieux que l'option -e!
@echo off ruby -e 'print "Voici l\'emplacement de mon jdk: %JAVA_HOME%"'On obtient:
def fix_external_link(url) url.sub(/^[^:]+:/) { |p| p.upcase } end print fix_external_link("http://rubyscube.blogspot.com")
#!/usr/bin/env ruby require 'logger' logfile = 'shifting.log' # Max 3 age ... logShifting.log, logShifting.log.0, and logShifting.log.1 shift_age = 3 # Shift log file about for each 1024 bytes. shift_size = 1024 log = Logger.new(logfile, shift_age, shift_size) def do_log(log) log.debug('do_log1') { 'd' * rand(100) } log.info('do_log2') { 'i' * rand(100) } log.warn('do_log3') { 'w' * rand(100) } log.error('do_log4') { 'e' * rand(100) } log.fatal('do_log5') { 'f' * rand(100) } log.unknown('do_log6') { 'u' * rand(100) } end (1..10).each do do_log(log) end puts 'See shifting.log and shifting.log.[01].'update déc 2007: Je ne l'utilise plus maintenant and syntaxhighlighter à beaucoup changé depuis que j'ai fait ce post...