This exercise is intended to help you assess your progress with the concepts and techniques we've covered during the week.
For these questions, write a short snippet of code that meets
the requirement. Fill in your answers on a second sheet of paper or in your
notebook. In cases where the question mentions a "given"
data value, use the variable given
to refer to it (instead of re-writing
the information).
Fork this gist, and edit it with your answers. When you are done, fill out this form: http://goo.gl/forms/JFo8BV2fcP
name = "Angela"
given[0]
given[-1]
given[0..6]
given.chars.count
given.split.count
"key" + "board"
no_things = []
[1,2,3,4,5]
given[1]
given.count
students = ["Nicole", "Raphael"]
students.each { |name| puts name }
students << "Jeff"
15. Given the array [1,2,3,4]
, return a new array of only the even numbers. Then an array of only the odd numbers.
given.each { |number| puts number if number%2==0 }
given.each { |number| puts number if number%2!=0 }
[
["Horace", "Module 1"],
["Jeff", "Module 1"],
["Rachel", "Module 2"],
["Steve", "Module 4"]
]
given[0][1]
17. Given the following array, sort the list alphabetically by the names (i.e. the first element of each sub-array)
[
["Horace", "Module 1"],
["Jeff", "Module 1"],
["Rachel", "Module 2"],
["Steve", "Module 4"]
]
given.sort { |a,b| a[0] <=> b[0] }
given.pop
{}
{"puppy" => "dog"}
21. Assign the hash from 20 to a variable. Then add to it a new key "kitten" which points to the value "cat"
babies = {"puppy" => "dog", "kitten" => "cat"}
22. Given the hash from 21, create an array of the strings "puppy" and "kitten" (don't worry about the order)
babies.keys
23. Given the hash from 21, create an array of the strings "dog" and "cat" (don't worry about the order)
babies.values
24. Given the array ["Jeff", "Horace", "Josh", "Joanne"]
, create a new array containing each name in ALL CAPS
new = given.map {|name| name.upcase}
25. Given the array ["Jeff", "Horace", "Josh", "Joanne"]
, create a new array containing only the names that are shorter than 5 characters
five = given.delete_if {|name| name.length >= 5}
given.reduce(:+)
27. Given the following list of variable names, circle those that are valid ruby local variable names
TARDIS
apples
@height
3_blind_mice
soda_or_pop
@@x
$pizza
best_teacher
28. Given the string "pizza"
, create an array containing the individual characters, capitalized (i.e. ["P", "I", "Z", "Z", "A"]
)
"pizza".upcase.chars
29. Given the array ["Jeff", "Horace", "Josh", "Joanne"]
, create a new array containing only the names that start with "J"
given.find_all {|name| name[0] == "J"}
[
["Horace", "Module 1"],
["Jeff", "Module 1"],
["Rachel", "Module 2"],
["Steve", "Module 4"]
]
ruby.find {|set| set[1] == "Module 2"}
given.sub("sunlight","darkness)
32. Given the string "dogs and cats and parrots"
, replace all instances of the string "and"
with "or"
given.gsub("and","or")
given.join(" and ")