rubyの文法を勉強していて、自分なりに改造しようとして、実行されない理由がわかりませんでした。
puts "パスワードを入力してください" password = gets.chomp # 変数password_lengthにpasswordの文字数を代入してください password_length = password.length # password_lengthが0でない場合に"パスワードが入力されました"とputsしてください unless password_length == 0 puts "パスワードが入力されました" else puts "ちゃんと入れろゴルァ!" password = gets.chomp if password_length > 4 && password_length < 10 puts "パスワードは適切な長さです" end end # password_lengthが4文字以上10文字以下の場合に"パスワードは適切な長さです" とputsしてください if password_length > 4 && password_length < 10 puts "パスワードは適切な長さです" end
この文章のここの部分です。
unless password_length == 0 puts "パスワードが入力されました" else puts "ちゃんと入れろゴルァ!" password = gets.chomp if password_length > 4 && password_length < 10 puts "パスワードは適切な長さです" end end # password_lengthが4文字以上10文字以下の場合に"パスワードは適切な長さです" とputsしてください if password_length > 4 && password_length < 10 puts "パスワードは適切な長さです" end
ここのunlessからのif分で入力せずに、パスワードを再入したときに、パスワードを5文字にしても、数値が表示されるだけです。
また、条件分の中で入力されない限りループを回したいとも考えましたが、なかなか思いつきませんでした。
何かいい手はありますでしょうか?
if notでもif分でも構いません。
宜しくお願いしますm(_ _)m
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/24 13:53