Control Structures In Ruby

Name: _____________________

Date: _____________________

Instructions: Answer all questions. Write your answers clearly in the space provided.

Question 1:

The following syntax is used for the ruby case statement. case expression
when expression , expression ... then
code ...
else
code
end

A. True
B. False
Answer: _________
Question 2:

What is the output of the given code? age = 4
case age
puts "baby" when 0 .. 2
puts "little child" when 3 .. 6
puts "child" when 7 .. 12
puts "youth" when 13 .. 18
puts "adult" else
end

A. adult
B. youth
C. child
D. syntax error
Answer: _________
Question 3:

What is the output of the given code? for counter in 1..5
case counter
when 0 .. 2
puts counter
puts "baby"
when 3 .. 6
puts counter
puts "little child"
when 7 .. 12
puts counter
puts "child"
else
puts counter
puts "adult"
end
end

A. adult 1..5
B. 3..6 littlechild
C. 1 baby 2 baby 3 little child 4 little child 5 little child
D. adult
Answer: _________
Question 4:

What is the output of the given code? string = gets.chomp
case string
when string = "a"
print "alphabet a"
when string = "b"
print "alphabet b"
when string = "c"
print "alphabet c"
else
print "some other alphabet"
end

A. alphabet a
B. b alphabet b
C. alphabet c
D. Syntax error
Answer: _________
Question 5:

The expression specified by the when clause is evaluated as the left operand. If no when clauses match, case executes the code of the else clause.

A. True
B. False
Answer: _________
Question 6:

What is the output of the given code? length=gets.chomp
case length.length
when length=4
print "length is 4"
when length=5
print "length is 5"
end

A. ruby length is 4
B. ruby length is 5
C. abc length is 4
D. syntax error
Answer: _________
Question 7:

What is the output of the given code? length=gets.chomp
case length.reverse.length
when length=4
print "length is 4"
when length=5
print "length is 5"
end

A. ruby length is 4
B. ruby length is 5
C. abc length is 4
D. syntax error
Answer: _________
Question 8:

What is the output of the given code? l=9
case l
print "ruby" when l==9
print "language" when l==10
end

A. l==9
B. l==10
C. Syntax error
D. Ruby
Answer: _________
Question 9:

A case statement compares the expression specified by case and that specified by when using the === operator and executes the code of the when clause that matches.

A. True
B. False
Answer: _________
Question 10:

While loop checks the condition and the loop keeps on running till the condition is true, it stops when the condition becomes false.

A. True
B. False
Answer: _________
Question 11:

What is the output of the given code? if 11>2
puts "Eleven is greater than two"
end
print "You'r right"

A. Eleven is greater than two
B. You'r right
C. Eleven is greater than two You'r right
D. None of the mentioned
Answer: _________
Question 12:

What is the output of the given code? if 79>78
puts "True".upcase
if 9>8
puts "True".reverse
if 7==7
puts "equal".downcase
end
end
end

A. True
B. True eurt
C. TRUE eurT equal
D. equal
Answer: _________
Question 13:

What is the output of the given code? if 79>78
puts "True".upcase
if 9>8
puts "True".Upcase
if 7==7
puts "equal".downcase
end
end
end

A. True
B. Error
C. True,error
D. TRUE Undefined method 'Upcase' for String
Answer: _________
Question 14:

If statement inside if statement is called Nested if statements.

A. True
B. False
Answer: _________
Question 15:

What is the output of the given code? x=1
if x > 2
puts "x is greater than 2"
elsif x <= 2 and x!=0
puts "x is 1"
else
puts "I can't guess the number"
end

A. x is greater than 2
B. x is 1
C. I can't guess the number
D. None of the mentioned
Answer: _________
Question 16:

It's a good habit to give two spaces between if statement and condition.

A. True
B. False
Answer: _________
Question 17:

What is the use of else statement?

A. When the if condition is false then the next else condition will get executed
B. When the if condition is false then the elsif condition will get executed
C. When the if condition is false and if else condition is true then only it will get executed
D. None of the mentioned
Answer: _________
Question 18:

Is the following syntax correct? if conditional
code...
elsif conditional
code..
else
code
end

A. True
B. False
Answer: _________
Question 19:

What is the output of the given code? if 1>2
puts "false"
else
puts "True"

A. False
B. True
C. Syntax error
D. None of the mentioned
Answer: _________
Question 20:

What is the output of the code? if 1>2
puts "false"
end
else
puts "True"
end

A. False
B. True
C. Syntax error
D. None of the mentioned
Answer: _________
Question 21:

Which of the following is used to create a range in Ruby?

A. ( )
B. { }
C. [ ]
D. .. or ...
Answer: _________
Question 22:

What is the output of the following code snippet? for i in 1..5
print i, " "
end

A. 1 2 3 4 5
B. 1 2 3 4
C. 5 4 3 2 1
D. 1 1 1 1 1
Answer: _________
Question 23:

In Ruby, what does the `break` keyword do when used within nested loops?

A. Exits only the inner loop
B. Exits only the outer loop
C. Exits all loops
D. Skips the current iteration of the loop
Answer: _________
Question 24:

Which of the following is NOT a valid way to exit a loop in Ruby?

A. break
B. continue
C. redo
D. next
Answer: _________
Question 25:

In Ruby, what does the `until` keyword do?

A. Executes code if condition is true
B. Executes code if condition is false
C. Breaks out of loop if condition is true
D. Executes code only once if condition is true
Answer: _________
Question 26:

What does the `retry` keyword do when used within a loop in Ruby?

A. Repeats the current iteration of the loop
B. Restarts the loop from the beginning
C. Exits the loop
D. Skips the current iteration of the loop
Answer: _________
Question 27:

In Ruby, what does the `case` statement allow you to compare against?

A. Integers
B. Strings
C. Ranges
D. All of the above
Answer: _________
Question 28:

In Ruby, which of the following is NOT a valid loop construct?

A. loop
B. for
C. dowhile
D. while
Answer: _________
Question 29:

What is the purpose of the loop keyword in Ruby?

A. To iterate over a collection of elements
B. To create an infinite loop
C. To perform a comparison operation
D. To exit a loop based on a condition
Answer: _________
Question 30:

Which of the following is used to define a block of code that executes repeatedly until a condition is met in Ruby?

A. for
B. until
C. loop
D. while
Answer: _________
Question 31:

In Ruby, what is the purpose of the `redo` keyword?

A. Repeats the current iteration of the loop
B. Exits the loop
C. Skips the current iteration of the loop
D. Restarts the loop from the beginning
Answer: _________
Question 32:

Which keyword in Ruby is used to exit a loop prematurely?

A. exit
B. break
C. terminate
D. stop
Answer: _________
Question 33:

In Ruby, which of the following is used to handle multiple conditions with one expression?

A. if
B. unless
C. case
D. switch
Answer: _________
Question 34:

In Ruby, what does the `else` keyword do?

A. Specifies the code block to execute if a condition is true
B. Specifies the code block to execute if a condition is false
C. Specifies the code block to execute if no other conditions are met
D. Specifies the code block to execute in all cases
Answer: _________
Question 35:

In Ruby, what does the `elsif` keyword do?

A. Specifies the code block to execute if a condition is true
B. Specifies the code block to execute if a condition is false
C. Specifies the code block to execute if no other conditions are met
D. Specifies the code block to execute in all cases
Answer: _________
Question 36:

The following syntax is correct for if conditional statement. if condition
code
end

A. True
B. False
Answer: _________
Question 37:

If expression. The expression can be of which type?

A. True
B. Any number
C. Any string
D. All of the mentioned
Answer: _________
Question 38:

What error does the if condition gives if not terminated with end statement?

A. Syntax error
B. Unexpected end
C. Expecting keyword end
D. All of the mentioned
Answer: _________
Question 39:

What is the output of the following? if 1<2
print "one is less than two"
end

A. One is less than two
B. Syntax error
C. 1<2
D. None of the mentioned
Answer: _________
Question 40:

What is the output of the code? if 11<2
print "Eleven is less than two"
end
print "11 is greater"

A. 11 is greater
B. Eleven is less than two
C. Eleven is less than two 11 is greater
D. None of the mentioned
Answer: _________
Question 41:

What is the output of the given code? var = 1
print "1 -- Value is set
" if var
print "2 -- Value is set
" unless var
var = false
print "3 -- Value is set
" unless var

A. 1–Value is set
B. 2–Value is set
C. 1–Value is set 2–Value is set
D. 1–Value is set 3–Value is set
Answer: _________
Question 42:

What is the output of the given code? hungry=false
unless hungry
print "Not hungry"
else
print "Hungry"
end

A. Not hungry
B. Hungry
C. Syntax error
D. None of the mentioned
Answer: _________
Question 43:

The following syntax is also used for unless conditional statement. code unless conditional

A. True
B. False
Answer: _________
Question 44:

What is the output of the given code? counter=12
unless counter
print counter+1
else
print counter+2
end

A. 13
B. 14
C. 15
D. None of the mentioned
Answer: _________
Question 45:

What is the output of the given code? unless true && false
print "false"
else
print "ruby"
end

A. True
B. False
C. Nil
D. Syntax error
Answer: _________
Question 46:

What is the output of the given code? print "2 is less than 3" unless 2>3

A. 2>3
B. 2 is less than 3
C. Syntax error
D. None of the mentioned
Answer: _________
Question 47:

What is the output of the given code? x=8
y=10
unless x>y
puts "x is less than y"
end
unless x>y+1
puts "x is less than y+1"
end

A. x is less than y
B. x is less than y+1
C. x is less than y x is less than y+1
D. None of the mentioned
Answer: _________
Question 48:

What is the output of the given code? x="ruby".length
y="language".length
puts x,y
unless x>y
print "length of x is less than that of y"
end

A. 4 8
B. 4 8 length of x is less than that of y
C. Syntax error
D. None of the mentioned
Answer: _________
Question 49:

What is the output of the given code? x=8
y=10
unless x<y
puts "x is less than y"
end
unless x>y+1
puts "x is less than y+1"
end

A. x is less than y
B. x is less than y+1
C. x is less than y x is less than y+1
D. None of the mentioned
Answer: _________
Question 50:

What is the output of the given code? age = 5
case age
when 0 .. 2
puts "baby"
when 3 .. 6
puts "little child"
when 7 .. 12
puts "child"
when 13 .. 18
puts "youth"
else
puts "adult"
end

A. baby
B. adult
C. little child
D. youth
Answer: _________
Question 51:

What is the output of the given code? for num in 1...5
puts num
end

A. 1 2 3 4 5
B. 1 2 3 4
C. 2 3 4 5
D. None of the mentioned
Answer: _________
Question 52:

What does the 1...10 indicate?

A. Inclusive range
B. Exclusive range
C. Both inclusive and exclusive range
D. None of the mentioned
Answer: _________
Question 53:

What is the output of the given code? for num in 1..3
puts num
for i in 1..2
puts num*i
end
end

A. 1 2 3 4 5
B. 1 1 2 2 2 4 3 3 6
C. 2 3 4 5
D. None of the mentioned
Answer: _________
Question 54:

What is the output of the given code? m= 0
loop do
m += 1
print m
break if m == 10
end

A. 12345678910
B. 1 2 3 4
C. 2 3 4 5
D. None of the mentioned
Answer: _________
Question 55:

What is the output of the given code? for num in 1..5
puts num*num
end

A. 12345678910
B. 1 2 3 4
C. 1 4 9 16 25
D. None of the mentioned
Answer: _________
Question 56:

What is the output of the given code? for num in 1..3
puts num*num
m= 0
loop do
m += 1
puts m
break if m == 3
end
end

A. 12345678910
B. 1 1 2 3 4 1 2 3 9 1 2 3
C. 1 4 9 16 25
D. None of the mentioned
Answer: _________
Question 57:

What is the output of the given code? loop do
m += 1
puts m
break if m == 3
end

A. Garbage values
B. 1 1 2 3 4 1 2 3 9 1 2 3
C. 1 4 9 16 25
D. None of the mentioned
Answer: _________
Question 58:

What is the output of the given code? i=1
for i in 5..10
puts i^2
end

A. 7 4 5 10 11 8
B. 25 36 49 64 81 100
C. 1 4 9 16 25
D. None of the mentioned
Answer: _________
Question 59:

What does the 1..10 indicate?

A. Inclusive range
B. Exclusive range
C. Both inclusive and exclusive range
D. None of the mentioned
Answer: _________
Question 60:

What is the output of the given code? i=5
j=10
for i in 5..10 && j in 5..10
puts i**j
end

A. Syntax error
B. 25 36 49 64 81 100
C. 1 4 9 16 25
D. None of the mentioned
Answer: _________
Question 61:

What is the output of the given code? counter = 1
while counter < 11
puts counter
counter = counter + 1
end

A. Prints the number from 1 to 10
B. Prints the number from 1 to 11
C. Prints the number from 2 to 10
D. Infinite loop
Answer: _________
Question 62:

What is the output of the given code? counter = true
while counter !=false
puts counter
end

A. True
B. False
C. Syntax error
D. Infinite loop
Answer: _________
Question 63:

What is the output of the given code? i = 0
while i < 5
puts i
i=(i+1)**2
end

A. 1 2 3 4 5
B. 0 1 4
C. 0 1
D. 1 4
Answer: _________
Question 64:

What is the output of the given code? a=5
b=15
while a&&b
puts a+b
end

A. 5..15
B. 20
C. Infinite loop
D. 5 15
Answer: _________
Question 65:

What is the output of the given code? a=5
b=15
while b>a
puts a*(b-a)
while a>b
a+=1
b-=1
end
end

A. 5..15
B. 50
C. Infinite loop
D. 5 50
Answer: _________
Question 66:

What is the output of the given code? i = 3
while i > 0 do
print i
i -= 1
end

A. 3
B. 321
C. Infinite loop
D. 3 2 1 0
Answer: _________
Question 67:

What is the output of the given code? i = 50
while i > 25 do
print 50/i
i -= 1
end

A. 50..25
B. 50..1
C. Infinite loop
D. 1111111111111111111111111
Answer: _________
Question 68:

What is the output of the given code? a = 5
b=10
while a<b do
puts a*b
a+=2
b-=2
end

A. 5 10
B. 50 56
C. Infinite loop
D. 5 6 7 8 9 10
Answer: _________
Question 69:

What is the output of the given code? i = 50
j=55
while i > 25 && j>35 do
puts 50*j/i
i -= 1
j-=2
end

A. 25 35
B. 50 55
C. Infinite loop
D. 55 54 53 52 51 50 48 47 46 45
Answer: _________
Question 70:

What is the output of the given code? i = 50
j=55
while i > 25 && i*j<100 do
puts (50*j)/i
i -= 1
j-=2
end

A. 25 35
B. No output
C. Infinite loop
D. 55 54 53 52 51 50 48 47 46 45
Answer: _________
Question 71:

The complement of while loop is until loop.

A. True
B. False
Answer: _________
Question 72:

What is the output of the given code? counter = 1
until counter > 10
puts counter
counter+=1
end

A. 1 2 3 4 5 6 7 8 9 10
B. 11 12 13 14 ... infinite loop
C. 0 1 2 3 4 5 6 7 8 9
D. None of the mentioned
Answer: _________
Question 73:

What is the output of the given code? counter = 0
until counter >= 10
puts counter
counter+=1
end

A. 1 2 3 4 5 6 7 8 9 10
B. 11 12 13 14 ... infinite loop
C. 0 1 2 3 4 5 6 7 8 9
D. None of the mentioned
Answer: _________
Question 74:

What is the output of the given code? i = 3
while i > 0 do
puts i
i -= 1
end

j = 3
until j == 0 do
puts j
j -= 1
end

A. 1 2 3 1 2 3
B. 3 2 1 3 2 1
C. 0 1 2 3 4 5 6 7 8 9
D. None of the mentioned
Answer: _________
Question 75:

What is the output of the given code? a="hungry"
until !a
puts "hungry"
a=!a
end

A. hungry
B. Nil
C. Error
D. None of the mentioned
Answer: _________
Question 76:

What is the output of the given code? m= 8
loop do
m += 2
puts m
break if m == 16
end

A. 10 12 14 16
B. Nil
C. Error
D. None of the mentioned
Answer: _________
Question 77:

What is the output of the given code? m=0
loop do
print "ruby"
m+=1
break if m==5
end

A. rubyrubyrubyrubyrubyruby
B. rubyrubyrubyrubyruby
C. Error
D. None of the mentioned
Answer: _________
Question 78:

What is the output of the given code? m=0
loop do
puts m*10
m+=1
break if m==5
end

A. 0 10 20 30 40
B. 10 20 30 40 50
C. Error
D. None of the mentioned
Answer: _________
Question 79:

What is the output of the given code? m=0
loop do
puts 101
m+=1
break if m==5
end

A. 101 101 101 101 101
B. 10 20 30 40 50
C. Error
D. None of the mentioned
Answer: _________
Question 80:

What is the output of the given code? m=5
loop do
m-=1
break if m==0
end

A. 1 2 3 4 5
B. 10 20 30 40 50
C. Error
D. Nil
Answer: _________
Question 81:

What does the `next` keyword do in a loop in Ruby?

A. Continues to the next iteration of the loop
B. Exits the loop
C. Skips the current iteration of the loop
D. Resets the loop counter to 0
Answer: _________
Question 82:

In Ruby, what does the `elsif` keyword allow you to do?

A. Add a new class to a module
B. Define an instance method within a class
C. Add an else-if condition to an if statement
D. Create a new variable
Answer: _________
Question 83:

Which of the following is NOT a logical operator in Ruby?

A. &&
B. ||
C. !!
D. %%
Answer: _________
Question 84:

What is the output of the following code snippet? x = 5
while x > 0
puts x
x -= 1
end

A. 54321
B. 12345
C. Error
D. Infinite loop
Answer: _________
Question 85:

What does the `retry` keyword do in Ruby?

A. Repeats the current iteration of the loop
B. Exits the loop
C. Restarts the loop from the beginning
D. Restarts the current block of code from the beginning
Answer: _________
Question 86:

Which loop in Ruby allows you to execute code while a condition is true?

A. while
B. for
C. until
D. loop
Answer: _________
Question 87:

What does the unless keyword do in Ruby?

A. Executes code if condition is true
B. Executes code if condition is false
C. Breaks out of loop if condition is true
D. Executes code only once if condition is true
Answer: _________
Question 88:

What is the purpose of the next keyword in a loop in Ruby?

A. Exits the loop
B. Skips the current iteration of the loop
C. Resets the loop counter to 0
D. Continues to the next iteration of the loop
Answer: _________
Question 89:

What is the output of the following code snippet? x = 1
loop do
puts x
x += 1
break if x > 5
end

A. 1 2 3 4 5
B. 1 2 3 4
C. 5 4 3 2 1
D. 1 1 1 1 1
Answer: _________
Question 90:

In Ruby, what is the purpose of the `case` statement when combined with `when` clauses?

A. To define a block of code that executes when a condition is met
B. To iterate over a collection of elements
C. To perform mathematical calculations
D. To define a class
Answer: _________
Question 91:

The elsif statement can add many alternatives to if/else statements.

A. True
B. False
Answer: _________
Question 92:

What is the output of the given code? counter=6
if counter<=5
puts (counter)
counter=counter+1
puts (counter)
elsif counter>5
puts (counter)
counter=2*counter
puts(counter)
else
puts(counter)
counter=counter-1
puts(counter)
end

A. 5 10
B. 6 12
C. Syntax error
D. None of the mentioned
Answer: _________
Question 93:

What is output of the given code? counter=-3
if counter<=5
puts (counter)
counter=counter+1
puts (counter)
elsif counter>5
puts (counter)
counter=2*counter
puts(counter)
end

A. -3 -2
B. -3 -6
C. Syntax error
D. None of the mentioned
Answer: _________
Question 94:

What is the output of the given code? if !true
print "False"
elsif !true || true
print "True"
end

A. True
B. False
C. Syntax eroor
D. None of the mentioned
Answer: _________
Question 95:

What is the output of the given code? variable = false
if variable
print "false"
elsif !variable
print "true"
end

A. False
B. True
C. Syntax error
D. None of the mentioned
Answer: _________
Question 96:

What is the output of the given code? x=7
y=9
if x==y
print "equal"
elsif x>y
print "greater"
else
print "less"
end

A. equal
B. greater
C. less
D. none of the mentioned
Answer: _________
Question 97:

What is the output of the given code? a=true
b=false
if a && b
puts "False"
elsif a || b
puts "True"
else
puts "neither true nor false"
end

A. false
B. true
C. neither true nor false
D. none of the mentioned
Answer: _________
Question 98:

What is the output of the given code? a=10
b=2
if a>b
a=a*b
puts (a)
elsif a<b
a=a*a+b
puts (a)
else
a=a-b
puts (a)
end

A. 20
B. 102
C. -98
D. None of the mentioned
Answer: _________
Question 99:

Syntax for unless conditional statement is unless conditional [then]
code
else
code
end

A. True
B. False
Answer: _________
Question 100:

What is the output of the given code? x=3
unless x>2
puts "x is less than 2"
else
puts "x is greater than 2"
end

A. x is greater than 2
B. x is less than 2
C. 3
D. None of the mentioned
Answer: _________
Question 101:

What is the keyword used to define a conditional statement in Ruby?

A. case
B. while
C. for
D. if
Answer: _________
Question 102:

Which of the following loops in Ruby is executed at least once?

A. while
B. until
C. for
D. do...while
Answer: _________
Question 103:

In Ruby, what does the unless keyword do?

A. Executes code if condition is true
B. Executes code if condition is false
C. Breaks out of loop if condition is true
D. Executes code only once if condition is true
Answer: _________
Question 104:

What is the purpose of the case statement in Ruby?

A. To define a class
B. To handle multiple conditions with one expression
C. To declare a variable
D. To perform mathematical calculations
Answer: _________
Question 105:

Which loop in Ruby allows you to iterate over a collection of elements?

A. while
B. for
C. until
D. each
Answer: _________
Question 106:

What is the result of the expression 5 > 3 ? "Yes" : "No" in Ruby?

A. Yes
B. No
C. 5
D. 3
Answer: _________
Question 107:

What does the break keyword do in a loop in Ruby?

A. Continues to the next iteration of the loop
B. Exits the loop
C. Skips the current iteration of the loop
D. Resets the loop counter to 0
Answer: _________
Question 108:

Which of the following is NOT a comparison operator in Ruby?

A. <=>
B. ===
C. ==~
D. ><
Answer: _________
Question 109:

What is the purpose of the redo keyword in Ruby?

A. Repeats the current iteration of the loop
B. Exits the loop
C. Skips the current iteration of the loop
D. Restarts the loop from the beginning
Answer: _________
Question 110:

What is the output of the following code snippet? x = 10
unless x > 15
puts "Hello"
end

A. Hello
B. No output
C. Error
D. nil
Answer: _________
Question 111:

What is the output of the code? variable=true
if variable
puts "true"
else
puts "false"
end

A. False
B. True
C. Syntax error
D. None of the mentioned
Answer: _________
Question 112:

What is the output of the code? variable="true".reverse
if variable
puts "true"
else
puts "false"
end

A. False
B. True
C. Syntax error
D. None of the mentioned
Answer: _________
Question 113:

What is the output of the code? variable=true
if !variable
puts "true"
else
puts "false"
end

A. False
B. True
C. Syntax error
D. None of the mentioned
Answer: _________
Question 114:

What is the output of the code? variable="true".length
if variable
puts "true"
else
puts "false"
end

A. False
B. True
C. Syntax error
D. 4
Answer: _________
Question 115:

Which of the following is valid conditional statement?

A. else
B. els
C. if else
D. None of the mentioned
Answer: _________
Question 116:

What is the output of given code? counter=1
if counter<=5
puts (counter)
counter=counter+1
else
puts(counter)
counter=counter-1
end

A. 1, 2
B. 1,2,3,4,5
C. 1 2 1
D. 1 2
Answer: _________
Question 117:

What is the output of given code? #counter=1
if counter<=5
puts (counter)
counter=counter+1
else
puts(counter)
counter=counter-1
end

A. Undefined local variable counter
B. 1,2,3,4,5
C. 1 2 1
D. 1 2
Answer: _________
Question 118:

It is necessary that always if should come with else block?

A. True
B. False
Answer: _________
Question 119:

Which of the following is valid conditional statement in Ruby?

A. elseif
B. elsif
C. else if
D. elseiff
Answer: _________
Question 120:

The elsif conditional statement is written with an expression.

A. True
B. False
Answer: _________

Answer Key

1: A
2: D
3: C
4: B
5: A
6: A
7: A
8: C
9: A
10: A
11: C
12: C
13: D
14: A
15: B
16: A
17: C
18: A
19: C
20: C
21: D
22: A
23: A
24: B
25: B
26: B
27: D
28: C
29: B
30: C
31: A
32: B
33: C
34: C
35: A
36: A
37: D
38: D
39: A
40: A
41: D
42: A
43: A
44: B
45: B
46: B
47: C
48: B
49: B
50: C
51: B
52: B
53: B
54: A
55: C
56: C
57: A
58: B
59: A
60: A
61: A
62: D
63: B
64: C
65: C
66: B
67: D
68: B
69: B
70: B
71: A
72: A
73: C
74: C
75: A
76: A
77: B
78: A
79: A
80: D
81: A
82: C
83: D
84: B
85: C
86: A
87: B
88: D
89: A
90: A
91: A
92: B
93: A
94: A
95: B
96: C
97: B
98: A
99: A
100: A
101: D
102: D
103: B
104: B
105: D
106: A
107: B
108: D
109: A
110: A
111: B
112: B
113: A
114: B
115: A
116: D
117: A
118: B
119: B
120: A