先决条件
您需要在计算机上安装 Ruby。如果你没有安装 Ruby,你可以从ruby-lang.org下载它。
入门
puts “Welcome to the guessing game!”
接下来,我们将生成一个介于 0 到 9 之间的随机数并将其存储在一个名为 的变量中secret_num。
secret_num = rand(0 .. 9)
该rand方法将生成一个介于 0 到 9 之间的随机数。..运算符将创建一个从 0 到 9 的范围。
接下来,我们将创建一个初始化以下变量:
guess = nilguess_count = 0guess_limit = 3out_of_guesses = false
接下来,我们将创建一个 while 循环,只要用户未达到最大猜测次数且用户未猜到秘密数字,该循环就会运行。
while guess != secret_num and !out_of_guesses # if guess count is less than guess limit then increment guess count if guess_count < guess_limit puts “Enter your guessed number” guess = gets.chomp.to_i guess_count += 1; else # if guess count is greater than guess limit then set out_of_guesses to true out_of_guesses = true break endend
该gets方法将从用户的输入中读取一行。该chomp方法将从字符串末尾删除换行符。该to_i方法会将字符串转换为整数。
该if语句将检查用户是否已达到最大猜测次数。如果用户已达到最大猜测次数,则将out_of_guesses变量设置为true并while退出循环。
接下来,我们将检查用户是否已达到最大猜测次数。如果用户已达到最大猜测次数,我们将向用户打印一条消息并退出游戏。如果用户未达到最大猜测次数,我们将向用户打印一条消息并要求他们再次猜测。
if out_of_guesses puts “You lose!” puts “You have reached the maximum number of guesses.” puts “The secret number was #{secret_num}”else puts “Congratulations! You won!” puts “You guessed the secret number #{secret_num} and you did it in #{guess_count} guesses.”end
最后,您的代码应如下所示:
puts “Welcome to the number guessing game!”secret_num = rand(0 .. 9)guess = nilguess_count = 0guess_limit = 3out_of_guesses = falsewhile guess != secret_num and !out_of_guesses # if guess count is less than guess limit then increment guess count if guess_count < guess_limit puts “Enter your guessed number” guess = gets.chomp.to_i guess_count += 1; else # if guess count is greater than guess limit then set out_of_guesses to true out_of_guesses = true break endendif out_of_guesses puts “You lose!” puts “You have reached the maximum number of guesses.” puts “The secret number was #{secret_num}”else puts “Congratulations! You won!” puts “You guessed the secret number #{secret_num} and you did it in #{guess_count} guesses.”end
要运行游戏,请打开终端并导航到您保存guessing_game.rb文件的目录。然后运行以下命令:
ruby guessing_game.rb
结论
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!