Week 15: Perspectives
- TBD
Slides
Hand-in
The hand-in for this week consists of a series of questions designed to emulate the style of the two-hour written exam. However, the scope, difficulty, and length of these questions may not reflect those of the actual exam.
While the hand-in can be easily completed using online resources, lecture slides, and the textbook, I recommend attempting it under exam-like conditions for the most authentic experience: work alone, without any reference materials.
Question 1
Write seven Java keywords.
Question 2
What is a class file?
Question 3
What is double buffering?
Question 4
Write the Java comparison operators.
Question 5
- Write an expression that causes an
ArithmeticException. - Write an expression that evaluates to
NaN.
Question 6
Write a Java program that causes the compiler error:
incompatible types: possible lossy conversion from long to int
Question 7
In the context of StdDraw, what does setXscale and setYscale do?
Question 8
Given:
static double compoundInterest(double principal, double rate, int years) {
return principal * Math.pow(1 + rate, years);
}
Identify:
- the method signature.
- the method name.
- the formal parameters.
- the return type.
- the method body.
Question 9
Given the program:
public class Main {
public static void main(String[] args) {
System.out.print("Hello");
System.out.println("World!");
}
}
What is printed if you run:
$ javac Main.java
$ java Main.class
Question 10
Write a program that takes an integer and prints the n first digits of pi:
$ java Pi 1
3
$ java Pi 3
3.14
- Hint: You may use
Math.PI - Hint: You may assume
nis less than 10.
Question 11
Rewrite the code below using while-loop(s):
for (int i = 0, j = 10; i < j; i++, j--) {
System.out.println(i + " " + j);
}
Question 12
Are all variables within scope?
int sum = 0;
int i = 0;
while (i < 10) {
int tmp = 0;
if (i % 2 == 0){
for (int j = 0; j < 10; j += 2){
tmp -= j;}} else {
for (int j = 0; j < 10; j += 2){
tmp += j; }}
sum += tmp * j; i++; }