【发布时间】:2021-11-08 07:01:07
【问题描述】:
再一次,我是整个计算机编码的新手,我正在做一个新兵训练营,试图掌握基础知识并踏上第一步,但由于某种原因,我无法让整个迭代的事情坚持下去我的大脑,我们刚刚开始在 ruby 中进行哈希计算,而我实际上已经盯着检查点问题看了一天半,我只是无法让我的大脑知道下一个合乎逻辑的步骤是什么才能得到提供的答案。它在几周后我的实际现场课程开始之前的工作前部分,而且这只是我第二个完整的一周进行任何编码,所以最简单的基本提示/答案将不胜感激。
这就是问题所在: 编写一个循环,为每个人提供一个由他们的名字 + 姓氏@gmail.com 组成的电子邮件地址。例如,Robert Garcia 将收到 robertgarcia@gmail.com 的电子邮件。程序应以:p 人结束
people = [
{
"first_name" => "Robert",
"last_name" => "Garcia",
"hobbies" => ["basketball", "chess", "phone tag"]
},
{
"first_name" => "Molly",
"last_name" => "Barker",
"hobbies" => ["programming", "reading", "jogging"]
},
{
"first_name" => "Kelly",
"last_name" => "Miller",
"hobbies" => ["cricket", "baking", "stamp collecting"]
}
]
outer_index = 0
names = []
last_names = []
while outer_index < people.length
names << people[outer_index]["first_name"].downcase
last_names << people[outer_index]["last_name"].downcase
outer_index += 1
end
email = email = [names[0] + last_names[0] + "@gmail.com"]
这是我所取得的所有进展,因为我试图让它回到低谷并拿起第二个和第三个名字的一切都没有奏效。
根据他们的说法,这应该是最终的样子: 这样您就可以查看是否对每个哈希进行了正确的修改。结果应该是:
people =[
{
"first_name" => "Robert",
"last_name" => "Garcia",
"hobbies" => ["basketball", "chess", "phone tag"],
"email" => "robertgarcia@gmail.com"
},
{
"first_name" => "Molly",
"last_name" => "Barker",
"hobbies" => ["programming", "reading", "jogging"],
"email" => "mollybarker@gmail.com"
},
{
"first_name" => "Kelly",
"last_name" => "Miller",
"hobbies" => ["cricket", "baking", "stamp collecting"],
"email" => "kellymiller@gmail.com"
}
]
(请注意,您的输出不会很好地缩进)。
我完全不知所措,我看不出哪里出错了,所以任何帮助都会非常有帮助,所以我可以通过这个检查点,完成第二周并尽快进入第三周。
【问题讨论】:
-
计算的电子邮件需要添加回用于计算它的散列中,这将发生在循环内,对于每个数组元素(“散列”)。请注意,您可能会得到使用更规范的 Ruby 代码的答案。