Ruby, что не так с кодом? и что на счет лаконичности и правильности

Рейтинг: 1Ответов: 1Опубликовано: 19.04.2015

Изучаю Ruby. Решил написать консольную программку "Компьютер выбирает рандомное число, а пользователь должен его угадать с трёх попыток." Но программа работает не верно, Ограничение по попыткам не работает. То ли не плюсует, то ли что. Т.к больше трех попыток, а в выигрыше вывод что угадал с 1 попытки.

puts "Приветствуем вас. Компьютер загадал число от 1 до 7, попробуйте его угадать с 3-ёх попыток."
chislo_komp = rand(7)

chislo_user = nil
popitka = 0

while chislo_user != chislo_komp
  puts "Введите число: "
  chislo_user = gets.chomp.to_i
  if chislo_user != chislo_komp && popitka <=3
    puts "Введите число: "
    chislo_user = gets.chomp.to_i
    popitka = popitka+1
  elsif chislo_user == chislo_komp
    puts "Урааа, вы выиграли!"
    puts "Вы угадали число с " + popitka.to_s + " раза."
  elsif popitka > 3
    puts "Сожалеем, но ваши попытки исчерпаны. Вы проиграли."
  end
end

Ответы

Ответов пока нет.