Also habe ich dieses Stück Code geschrieben mit Zahlen zu spielen, um und die until-Schleife:Ruby bis immer als falsch validiert?
number = rand(10)
puts number
puts "Guess the number"
guess = gets.chomp
until guess == number
puts "Guess again!"
guess = gets.chomp
end
puts "You've guessed it right! The number is #{guess}
Aber aus irgendeinem Grunde ist es immer in dem UNTIL-Schleife stecken, und ich bin nicht sicher, warum. Ich gebe die Zufallszahl an, um zu wissen, dass ich richtig rate und den Code ausprobiere. Ich bin komplett neu in Ruby, also denke ich, es ist eine sehr offensichtliche Sache, die ich vermisse, aber ich sehe es einfach nicht.
Aus meiner Sicht, wann immer ich für die Schätzung erneut, diese Schätzung, die von der bis Schleife mit until guess == number
validiert.
Wer kann mir helfen, dies zu klären?
Sie vergleichen eine Zahl mit einem Zeichen. Ändern Sie "gets.chomp" in "gets.chomp.to_i" (oder nur "gets.to_i") oder "number = rand (10) .to_s" würde es tun. –