Skip to content

Instantly share code, notes, and snippets.

@kswhyte
Forked from mikedao/1606-b-week-1.markdown
Last active July 5, 2016 23:06
Show Gist options
  • Save kswhyte/908f718878beffc62a4ab3090ee82343 to your computer and use it in GitHub Desktop.
Save kswhyte/908f718878beffc62a4ab3090ee82343 to your computer and use it in GitHub Desktop.

Module 1 Week 1 Diagnostic

Fork this gist. Edit it with your answers, and submit the link here

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 = "Kinan Whyte"

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


given = "Turing"
given[0]

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


given = "abcdefghijklmnopqrstuvwxyz"
given[-1]

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


given = "Welcome to the Dungeon"
given.split[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


array = [1,2,3,4,5]

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


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

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


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

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


student_names = ["Gabby", "David"]

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


puts student_names



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


student_names.push("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 = [1,2,3,4]
even_numbers = []
odd_numbers = []


given.map do |num|
even_num << num if num.even?
end
puts even_numbers


given.map do |num|
new_array << num if num.odd?
end
puts odd_numbers

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


given = [ ["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 = [ ["Horace", "Module 1"], ["Jeff", "Module 1"], ["Rachel", "Module 2"], ["Steve", "Module 4"] ]
#These are already in alphabetical order but...otherwise I would use:
given.sort


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


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

19. Create an empty hash


hash = {}

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


{: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 = {:puppy => "dog"}
pets.merge!(:kitten => "cat")

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


pets.keys


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


pets.values


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


given = ["Jeff", "Horace", "Josh", "Joanne"]
given_allcaps = []
given.each do |name|
given_allcaps << name = name.upcase
end
puts given_allcaps

25. Given the array ["Jeff", "Horace", "Josh", "Joanne"], create a new array containing only the names that are shorter than 5 characters


given = ["Jeff", "Horace", "Josh", "Joanne"]
given_new = []
given.each do |name|
given_new << name if name.length < 5
end
puts given_new

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


given = [1,2,3,4]
sum = 0


given.each do |num|
sum = sum + num
end
puts

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

given.each do |name|
given_new << name if 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"]
]


given = [ ["Horace", "Module 1"], ["Jeff", "Module 1"], ["Rachel", "Module 2"], ["Steve", "Module 4"] ]
puts given[2][0]


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


puts "turing students love sunlight".gsub("sunlight", "darkness")

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


puts "dogs and cats and parrots".gsub("and", "or")

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


given = ["dogs", "cats", "parrots"]
given.join(" and ")

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