Ruby 什么参数应该传递给其他方法
我试图找出应该传递给Ruby 什么参数应该传递给其他方法,ruby,Ruby,我试图找出应该传递给directors\u total方法的参数,以便为\u director返回gross\u的结果 我尝试过插入不同的参数,结果会有不同的错误 require 'directors_database' require 'pp' require 'pry' # Write a method that, given an NDS creates a new Hash # The return value should be like: # # { directorOne =&g
directors\u total
方法的参数,以便为\u director返回gross\u的结果
我尝试过插入不同的参数,结果会有不同的错误
require 'directors_database'
require 'pp'
require 'pry'
# Write a method that, given an NDS creates a new Hash
# The return value should be like:
#
# { directorOne => allTheMoneyTheyMade, ... }
def directors_totals(nds)
result = {}
name_index = 0
director = nds[name_index][:name]
result[director] = 0
while name_index < nds.length do
result[director] += gross_for_director(gross_total)
name_index += 1
end
result
end
# Find a way to accumulate the :worldwide_grosses and return that Integer
# using director_data as input
def gross_for_director(director_data)
mov_index = 0
gross_total = 0
while mov_index < director_data[:movies].length do
gross_total += director_data[:movies][mov_index][:worldwide_gross]
mov_index += 1
end
gross_total
end
导演资料
{:name=>"Stephen Spielberg",
:movies=>
[{:title=>"Jaws",
:studio=>"Universal",
:worldwide_gross=>260000000,
:release_year=>1975},
{:title=>"Close Encounters of the Third Kind",
:studio=>"Columbia",
:worldwide_gross=>135189114,
:release_year=>1977},
{:title=>"Raiders of the Lost Ark",
:studio=>"Paramount",
:worldwide_gross=>248159971,
:release_year=>1981},
{:title=>"E.T. the Extra-terrestrial",
:studio=>"Universal",
:worldwide_gross=>435110554,
:release_year=>1982},
{:title=>"Schindler's List",
:studio=>"Universal",
:worldwide_gross=>96898818,
:release_year=>1993},
{:title=>"Lincoln",
:studio=>"Buena Vista",
:worldwide_gross=>182207973,
:release_year=>2012}]}
当你为导演调用gross\u
时,你应该传递nds[name\u index]
,因为它需要一些可以索引的东西:movies
你能显示导演的数据是什么样的数据结构吗?我猜哈希键不是符号检查此url:
{:name=>"Stephen Spielberg",
:movies=>
[{:title=>"Jaws",
:studio=>"Universal",
:worldwide_gross=>260000000,
:release_year=>1975},
{:title=>"Close Encounters of the Third Kind",
:studio=>"Columbia",
:worldwide_gross=>135189114,
:release_year=>1977},
{:title=>"Raiders of the Lost Ark",
:studio=>"Paramount",
:worldwide_gross=>248159971,
:release_year=>1981},
{:title=>"E.T. the Extra-terrestrial",
:studio=>"Universal",
:worldwide_gross=>435110554,
:release_year=>1982},
{:title=>"Schindler's List",
:studio=>"Universal",
:worldwide_gross=>96898818,
:release_year=>1993},
{:title=>"Lincoln",
:studio=>"Buena Vista",
:worldwide_gross=>182207973,
:release_year=>2012}]}