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).
name = "Eric Wahlgren-Sauro"
given[0]
given[-1]
given[0..6]
character_count = "supercalifragilisticexpialidocious"
character_count.length
words = "Coding is gr8"
words.
given + given1
no_things = []
array = [1, 2, 3, 4, 5]
given[1]
given.count
array = ["Brett", "Anthony"]
given[0..-1]
given.append("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.map.select do |number|
number if number.even?
end
given.map.select do |number|
number if number.odd?
end
[
["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[0..-1][a..z]
given.pop
empty_hash = {}
{":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"
pets = {":kitten" => "cat"}
22. Given the hash from 21, create an array of the strings "puppy" and "kitten" (don't worry about the order)
given = ["kitten", "cat"]
23. Given the hash from 21, create an array of the strings "dog" and "cat" (don't worry about the order)
given = ["dog", "cat"]
24. Given the array ["Jeff", "Horace", "Josh", "Joanne"]
, create a new array containing each name in ALL CAPS
given.map do |name| name.upcase end
25. Given the array ["Jeff", "Horace", "Josh", "Joanne"]
, create a new array containing only the names that are shorter than 5 characters
given.map select do |name|
name if name.length < 5
end
given.map do |number|
number += number
end
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"]
)
given.split
29. Given the array ["Jeff", "Horace", "Josh", "Joanne"]
, create a new array containing only the names that start with "J"
given.map.select do |name|
name if name[0] == 'J'
end
[
["Horace", "Module 1"],
["Jeff", "Module 1"],
["Rachel", "Module 2"],
["Steve", "Module 4"]
]
given.select do |module| module.select do |mod2| mod2 if mod2[1] == "Module 2" end end
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(" ")