3.12. Hard Multiple Choice Questions¶
These problems are harder than most of those that you will usually see on the AP CS A exam.
- 186
- This would be true if it was 150 + 17 (21 in octal) + 5 (101 in binary) + 14 (E in hexadecimal) which is 186.
- 123
- This would be true if it was 150 - 17 (21 in octal) + 5 (101 in binary) - 15 (F in hexadecimal) which is 123.
- 125
- This would be true if it was 150 - 17 (21 in octal) + 5 (101 in binary) - 13 (D in hexadecimal) which is 123.
- 168
- How did you get this? Maybe look up how to convert from octal and hexadecimal to decimal.
- 124
- This is 150 - 17 (21 in octal) + 5 (101 in binary) - 14 (E in hexadecimal) which is 124.
3-11-1: Which of the following would be the correct result from the following expression: 150 (in decimal) - 21 (in octal) + 101 (in binary) - E (in hexadecimal)?
The following question assumes you know about arrays and methods. You can skip it if you haven’t covered these yet and come back when you have.
- itemArray = {0, 1, 2, 3} and val = 3;
- This would be true if Java used pass by reference rather than pass by value (it creates copies of the values that are passed).
- itemArray = {0, 1, 2, 3} and val = 5;
- Java passes parameters by copying the value. With an array it creates a copy of the object reference. So,
mod
will change theitemArray
, butval
won't change sincemod
only changes the copy of the primitive value. - itemArray = {0, 0, 0, 0} and val = 0;
- How could this have happened?
- itemArray = {9, 8, 7, 6} and val = 3;
- Java passes parameters by passing the values this means that the contents of
itemArray
will be changed by themod
method, butval
won't change. - itemArray = {9, 8, 7, 6} and val = 5;
- Java passes parameters by passing the values this means that the contents of
itemArray
will be changed by themod
method.
3-11-2: Given the following code are the contents of itemArray
and val
after a call of mod(itemArray,val)
?
int[] itemArray = {9, 8, 7, 6};
int val = 5;
public static void mod(int[] a, int value)
{
for (int i=0; i < a.length; i++)
{
a[i] = i;
}
value = a[a.length-1];
}
You have attempted of activities on this page