Skip to content

Instantly share code, notes, and snippets.

@JStans12
Forked from mikedao/1608-b-week1.markdown
Last active August 22, 2016 15:36
Show Gist options
  • Save JStans12/7c1ab7271aa87ce2ce78cd3ad927cc26 to your computer and use it in GitHub Desktop.
Save JStans12/7c1ab7271aa87ce2ce78cd3ad927cc26 to your computer and use it in GitHub Desktop.

Module 1 Week 1 Diagnostic

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).

1. Create a variable called name and assign it to a string containing your name.

name = "Joey"


2. Given the string "Turing", retrieve the first character

"Turing"[0]


3. Given the string "abcdefghijklmnopqrstuvwxyz", retrieve the last character

"abcdefghijklmnopqrstuvwxyz"[-1]


4. Given the string "Welcome to the Dungeon", retrieve the substring "Welcome"

splstr = "Welcome to the Dungeon".split
splstr[0]

5. Find the number of characters in the string "supercalifragilisticexpialidocious"

"supercalifragilisticexpialidocious".length


6. Find the number of words in the string "Coding is gr8"

"Coding is gr8".split.length


7. Given 2 strings, "key" and "board", create a new string by concatening them together

"key" + "board"


8. Create a variable called no_things and assign it to an empty array

no_things = []


9. Create an array of the numbers 1 to 5

[1,2,3,4,5]


10. Given the array ["dog", "cat", "parrot"], retrieve the second element ("cat")

["dog", "cat", "parrot"][1]


11. Given the array ["dog", "cat", "parrot"], find how many elements appear in the array

["dog", "cat", "parrot"].length


12. Create an array containing strings of the names of the 2 students sitting closest to you.

["Brad", "Jason"]


13. Given the array from number 12, print the name of each student.

names = ["Brad", "Jason"]
names.each do |name|
print name # or put or p
end

14. Given the array from number 12, add the name "Jeff" to the end of the list

names << "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.

numbers = [1,2,3,4]
evens = numbers.find_all do |num|
num.even?
end



16. Given the following array, retrieve the second element of the first nested array
[
  ["Horace", "Module 1"],
  ["Jeff", "Module 1"],
  ["Rachel", "Module 2"],
  ["Steve", "Module 4"]
]

array[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"]
]

array.sort




18. Given the array ["pizza", "casserole", "pie"], remove the last element from the array

["pizza", "casserole", "pie"].pop


19. Create an empty hash

h = {}


20. Create a hash which associates the key "puppy" with the value "dog"

h = { "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"

h = { "puppy" => "dog" } h << { "kitten" => "cat" }



22. Given the hash from 21, create an array of the strings "puppy" and "kitten" (don't worry about the order)

h.keys



23. Given the hash from 21, create an array of the strings "dog" and "cat" (don't worry about the order)

h.values



24. Given the array ["Jeff", "Horace", "Josh", "Joanne"], create a new array containing each name in ALL CAPS

loud = ["Jeff", "Horace", "Josh", "Joanne"].each 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

under_five = ["Jeff", "Horace", "Josh", "Joanne"].find_all do |name|
name.length < 5
end


26. Given the array [1,2,3,4], add up all the numbers in the list

numbers = [1,2,3,4]
sum = 0
numbers.each do |num|
sum = sum + num
end


27. Given the following list of variable names, circle those that are valid ruby local variable names
  • TARDIS no
  • apples yes
  • @height yes
  • 3_blind_mice no
  • soda_or_pop yes
  • @@x no
  • $pizza no
  • best_teacher yes
28. Given the string "pizza", create an array containing the individual characters, capitalized (i.e. ["P", "I", "Z", "Z", "A"])

"pizza.upcase.split




29. Given the array ["Jeff", "Horace", "Josh", "Joanne"], create a new array containing only the names that start with "J"

js = ["Jeff", "Horace", "Josh", "Joanne"].find_all do |name|
name[0] = "J"
end


30. Given the following array, retrieve the name of the first instructor who teaches "Module 2"
[
  ["Horace", "Module 1"],
  ["Jeff", "Module 1"],
  ["Rachel", "Module 2"],
  ["Steve", "Module 4"]
]

modtwo = array.find do |teacher_class|
teacher_class[1] = "Module 2"
end


31. Given the string "turing students love sunlight" replace "sunlight" with "darkness"

"turing students love sunlight".replace("sunlight", "darkness")


32. Given the string "dogs and cats and parrots", replace all instances of the string "and" with "or"

"dogs and cats and parrots".replace_all("and", "or")


33. Given the array ["dogs", "cats", "parrots"], create the string "dogs and cats and parrots"

"#{array[0]} and #{array[1]} and #{array[2]}"


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment