Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 05-11-2016 00:09:42

francois
Membre
Inscription : 21-03-2016

RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

bonsoir

je débute sous Ruby, histoire de faire la comparaison avec python, et C++ et voilà que je rencontre mon premier écueil .

J'ai voulu créer un programme qui demande a un utilisateur de saisir un nombre au clavier et ensuite compte de 0 jusqu’à ce nombre.

Donc pour ça j'ai créer une boucle " while", mais le programme ne fonctionne pas , il génère une erreur relative a "main", ligne 5....autant si je pose une condition en "dur" de format numérique il fonctionne, autant avec une variable saisie au clavier il plante , voici mon code  :

#!/usr/bin/ruby
print "rentrer un chiffre"
nombre = gets.chomp
n = 0
    while n < nombre 
          print "#{n} "
          n=n+1
    end

Aurai-je oublier une parenthèse , un point....

Merci d'avance

Dernière modification par francois (21-11-2016 01:14:21)

Hors ligne

#2 13-11-2016 02:36:23

rodinux
Membre
Lieu : Ardèche
Distrib. : HandyLinux 2-5
Noyau : Linux 3.16.0-4-amd64
(G)UI : XFCE
Inscription : 29-05-2014
Site Web

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

Je pense que tu dois spécifier en ruby si il s'agit d'une string ou d'un entier et pour avoir le résultat, pour cela tu as les .to_i pour un entier ou les .to_s pour une string sinon c'est "puts" plutôt que "print" à préconiser...
Je modifierais ainsi ton code :

#!/usr/bin/ruby
puts "rentrer un chiffre"
nombre = gets.chomp
n = 0
  while n < nombre.to_i
          puts "#{n}"
          n=n+1
end



Pour tester et débugger, est-ce que tu connais irb ?? c'est inclut dans ruby wink
https://www.ruby-lang.org/en/documentation/quickstart/

Dernière modification par rodinux (13-11-2016 02:38:47)


La vie, ce n'est pas d'attendre que l'orage passe, c'est de danser sous la pluie...

Hors ligne

#3 19-11-2016 22:45:12

francois
Membre
Inscription : 21-03-2016

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

Bonsoir, désolé de te répondre en retard , mais je te remercie, et je vais essayer !

Hors ligne

#4 20-11-2016 18:20:17

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

on pourrait faire aussi :


#! /usr/bin/ruby
puts "entrer un nombre: "
nombre = gets.chomp.to_i
(0...nombre).each { |n|
    puts n
}
 


Ça ressemble plus à du ruby que le « while » qui n'est pas faux par ailleurs wink
Remarque, j'ai utilisé 0...nombre (avec trois points) pour aller de 0 à nombre-1.
Avec seulement deux points (0..nombre), ça génère une liste de 0 à nombre compris.

Dernière modification par enicar (21-11-2016 01:59:22)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#5 21-11-2016 01:12:40

francois
Membre
Inscription : 21-03-2016

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

Bonsoir

Surprenant comme façon de faire, pour moi qui ai commencé à apprendre par le C++, ou le compilateur gueule à la moindre virgule oubliée !

Décidément python revèle biend des surprises !

Merçi pour tout  !

Hors ligne

#6 21-11-2016 01:19:26

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

francois a écrit :

Décidément python revèle biend des surprises !


euh… ruby tu veux dire ! wink


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#7 22-11-2016 01:07:50

rodinux
Membre
Lieu : Ardèche
Distrib. : HandyLinux 2-5
Noyau : Linux 3.16.0-4-amd64
(G)UI : XFCE
Inscription : 29-05-2014
Site Web

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

Bonsoir,
oui, une ressource pour apprendre ruby :  http://ruby-doc.org/docs/beginner-fr/xhtml/. Sinon je suis curieux de savoir quelle est la distribution sid/debian de @enicar, avec openbox et kernel 4.8 ! Il n'y pas trop de bugs, incompatibilité de dépendences sur cette version de test  ?

La vie, ce n'est pas d'attendre que l'orage passe, c'est de danser sous la pluie...

Hors ligne

#8 30-11-2016 00:23:12

francois
Membre
Inscription : 21-03-2016

Re : RESOLU Passage d'un nombre en parametre d'une boucle while sous ruby

Bonsoir merci du tuyau ...ça a l'air intéressant en effet

Hors ligne

Pied de page des forums