Ruby noob在这里学习绳索.我目前正在阅读本教程并正在进行此练习:
让我们编写一个程序,要求我们输入尽可能多的单词(每行一个单词,一直持续到我们只需按空行上的Enter键),然后按字母顺序将单词重复给我们.
我现在忽略了字母顺序部分.
这是我的代码:
puts 'Hi, do you need something sorted?'
yn = gets.chomp
while yn != 'no'
puts 'What else?'
array = [gets]
yn = gets.chomp
end
puts 'Here\'s what you told me: ' +array.to_s
Run Code Online (Sandbox Code Playgroud)
我已经调整了几个小时.为了防止我的笔记本电脑因挫败感而破坏我正在休息.任何有更多经验,可能更有耐心的人都可以指出我的错误吗?
请记住,每次你gets是一个要求用户输入的方法.在你的线上:
array = [gets]
yn = gets.chomp
Run Code Online (Sandbox Code Playgroud)
你实际上要求输入两次.相反,将用户输入存储在某处(例如数组,见下文)并获取存储的值而不是向用户询问两次.
此外,array = [gets]用包含一个元素(用户输入)的数组替换现有数组.您永远不会在数组中构建用户输入.相反,在while循环之前初始化数组并在循环中使用<<:
array = Array.new
...
while yn != "no"
...
array << gets.chomp
yn = array.last
...
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22773 次 |
| 最近记录: |