Skip to content

Instantly share code, notes, and snippets.

@TrevMcKendrick
Created October 1, 2013 13:06
Show Gist options
  • Save TrevMcKendrick/6778155 to your computer and use it in GitHub Desktop.
Save TrevMcKendrick/6778155 to your computer and use it in GitHub Desktop.
Hashketball Homework
game = {
:the_lakers => {
:name => "The Lakers",
:colors => ["purple","gold"],
:players => {
:daniel_mckendrick => {
:stats => {
:points => 25,
:rebounds => 5,
:assists => 3,
:steals => 2,
:blocks => 7,
:slam_dunks => 4
},
:number => 23,
:shoe_size => 13
},
:curtis_meldrum => {
:stats => {
:points => 5,
:rebounds => 1,
:assists => 2,
:steals => 0,
:blocks => 3,
:slam_dunks => 2
},
:number => 45,
:shoe_size => 10
},
:allie_takeda => {
:stats => {
:points => 3,
:rebounds => 7,
:assists => 2,
:steals => 1,
:blocks => 2,
:slam_dunks => 1
},
:number => 99,
:shoe_size => 7
},
:annelise_tanzey => {
:stats => {
:points => 10,
:rebounds => 8,
:assists => 3,
:steals => 4,
:blocks => 1,
:slam_dunks => 2
},
:number => 50,
:shoe_size => 6
},
:rob_mckendrick => {
:stats => {
:points => 20,
:rebounds => 7,
:assists => 8,
:steals => 3,
:blocks => 5,
:slam_dunks => 1
},
:number => 98,
:shoe_size => 10
}
}
},
:the_celtics => {
:name => "The Celtics",
:colors => ["green","white"],
:players => {
:delanie => {
:stats => {
:points => 100,
:rebounds => 5,
:assists => 7,
:steals => 9,
:blocks => 8,
:slam_dunks => 4
},
:number => 55,
:shoe_size => 5
},
:stef_weiss => {
:stats => {
:points => 7,
:rebounds => 3,
:assists => 5,
:steals => 3,
:blocks => 6,
:slam_dunks => 2
},
:number => 8,
:shoe_size => 3
},
:carolyn_darcey => {
:stats => {
:points => 6,
:rebounds => 8,
:assists => 9,
:steals => 3,
:blocks => 1,
:slam_dunks => 1
},
:number => 12,
:shoe_size => 5
},
:bre_meldrum => {
:stats => {
:points => 30,
:rebounds => 3,
:assists => 7,
:steals => 8,
:blocks => 3,
:slam_dunks => 1
},
:number => 2,
:shoe_size => 4
},
:taylor_mckendrick => {
:stats => {
:points => 15,
:rebounds => 10,
:assists => 5,
:steals => 4,
:blocks => 2,
:slam_dunks => 2
},
:number => 10,
:shoe_size => 11
}
}
}
}
#puts game[:the_lakers][:players].has_key?(:daniel_mckendrick)
#1. Return the number of points scored for any player.
def points(game,player)
if game[:the_lakers][:players].has_key?(player) == true
game[:the_lakers][:players][player][:stats][:points]
else
game[:the_celtics][:players][player][:stats][:points]
end
end
#2 Return the shoe size for any player.
def shoe_size(game,player)
if game[:the_lakers][:players].has_key?(player) == true
game[:the_lakers][:players][player][:shoe_size]
else
game[:the_celtics][:players][player][:shoe_size]
end
end
#3 Return both colors for any team.
def colors(game,team)
game[team][:colors]
end
#4 Return both teams names.
def team_names(game)
game[:the_celtics][:name] + " & " + game[:the_lakers][:name]
end
#5 Return all the player numbers for a team.
# error reads "can't convert Symbol into Integer"
def player_numbers(game,team)
game[team][:players].each do |key,value|
puts [:players][:number]
end
end
#puts player_numbers(game,:the_lakers)
#6 Return all the stats for a player.
def player_stats(game,player)
if game[:the_lakers][:players].has_key?(player) == true
game[:the_lakers][:players][player][:stats]
else
game[:the_celtics][:players][player][:stats]
end
end
#7 Return the rebounds for the player with the largest shoe size.
# error : can't convert Symbol into Integer
def rebounds(game)
largest_shoe_size = 0
largest_shoe_size_player = ""
game[:the_lakers][:players].each do |player,value|
if [player][:shoe_size] > largest_shoe_size
largest_shoe_size = [player][:shoe_size]
largest_shoe_size_player = [player]
end
end
end
puts rebounds(game)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment