update,
This commit is contained in:
131
it114105/itp3914/Lab06/README.md.original
Normal file
131
it114105/itp3914/Lab06/README.md.original
Normal file
@@ -0,0 +1,131 @@
|
||||
# Lab 6 Selection Structures
|
||||
## Topic 3 Basic Program Structures
|
||||
|
||||
## Exercise 1
|
||||
Assuming that the variable $x$ is storing $1$, determine the result of the boolean expressions below.
|
||||
```
|
||||
int x = 1;
|
||||
```
|
||||
| Boolean expressions | Result |
|
||||
| ------------------- | ------ |
|
||||
| (true) && (4 < 3) | false|
|
||||
| !(x < 0) && (x < 0) | false |
|
||||
| (x < 0) || (x > 0) | true |
|
||||
| (x != 0) || (x == 0) | true |
|
||||
| (x != 0) || (x == 0) | true |
|
||||
| (x != 0) == !(x == 0) | true |
|
||||
|
||||
## Exercise 2
|
||||
Assuming that $x$ and $y$ are `int` type, which of the followings are legal Java expressions?
|
||||
| Expressions | legal | illegal |
|
||||
| ----------- | ----- | ------- |
|
||||
| x > y > 0 | [] | [x] |
|
||||
| x = y || y | [] | [x] |
|
||||
| x /= y | [x] | [x] |
|
||||
| x or y | [] | [x] |
|
||||
| x and y | [] | [x] |
|
||||
| (x != 7) || (x = 7) | [] | [x] |
|
||||
|
||||
## Exercise 3
|
||||
What will be the value of y after the program fragment below has been executed?
|
||||
```
|
||||
int x = 4;
|
||||
int y = 4;
|
||||
switch (x + 4) {
|
||||
case 8: y=1;
|
||||
default: y++;
|
||||
}
|
||||
# y is 2
|
||||
```
|
||||
|
||||
## Exercise 4
|
||||
Write a boolean expression that evaluates to true if the number x is in the range 21 to 30 inclusive, or x is negative.
|
||||
```
|
||||
(x >= 21 and x <= 30) || x < 0
|
||||
```
|
||||
|
||||
## Exercise 5
|
||||
Rewrite the `if-else` statements below to use the `switch` statement.
|
||||
|
||||
```java
|
||||
import java.util.Scanner;
|
||||
|
||||
public class Ex5 {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
Scanner scan = new Scanner(System.in);
|
||||
int a;
|
||||
int x = 0;
|
||||
|
||||
System.out.print("a: ");
|
||||
a = scan.nextInt();
|
||||
|
||||
if (a == 1)
|
||||
x += 3;
|
||||
else if (a == 2)
|
||||
x += 5;
|
||||
else if (a == 3)
|
||||
x += 7;
|
||||
else
|
||||
x += 10;
|
||||
|
||||
System.out.println("x = " + x);
|
||||
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Exercise 6
|
||||
In New York City (NYC), even numbered streets are east-bound, odd numbered streets are west-bound. Write a Java program to accept a street number from the user and print a message on screen to tell the user the direction.
|
||||
A sample execution of the program is shown below. Those in __ are user inputs.
|
||||
```
|
||||
e:\> java Ex6
|
||||
Street number? __213__
|
||||
West-bound
|
||||
```
|
||||
|
||||
## Exercise 7
|
||||
Write a Java program to calculate the parking fee based on the vehicle type and the hours a vehicle spent in a car park. The parking fee is charged according to the table below.
|
||||
|
||||
| Vehicle Type | Hourly Rate ($ per hour) |
|
||||
| - | - |
|
||||
| Private Car | 15 |
|
||||
| Bus | 35 |
|
||||
| Truck | 50 |
|
||||
|
||||
Sample executions of the program are shown below. Those in __ are user inputs. All inputs (including the vehicle type) have the data type `int`.
|
||||
```
|
||||
e:\> java Ex7
|
||||
Vehicle Type [1=private, 2=bus, 3=truck]? _1_
|
||||
Number of hours? _3_
|
||||
Parking fee = 45
|
||||
```
|
||||
|
||||
```
|
||||
e:\> java Ex7
|
||||
Vehicle Type [1=private, 2=bus, 3=truck]? _2_
|
||||
Number of hours? _2_
|
||||
Parking fee = 70
|
||||
```
|
||||
|
||||
## Exercise 8
|
||||
Write a Java program to read an examination mark and determine the grade obtained according to the table below. Note that an examination mark may be a fractional number such as 62.5.
|
||||
|
||||
| Mark | 0-39 | 39.1-49 | 49.1-59 | 59.1-69 | otherwise |
|
||||
| - | - | - | - | - | - |
|
||||
| Grade | F | D | C | B | A |
|
||||
|
||||
Sample executions of the program are shown below. Those in __ are user inputs.
|
||||
|
||||
```
|
||||
e:\> java Ex8
|
||||
Exam mark? _72.5_
|
||||
Grade = A
|
||||
```
|
||||
|
||||
```
|
||||
e:\> java Ex8
|
||||
Exam mark? _43.5_
|
||||
Grade = D
|
||||
```
|
Reference in New Issue
Block a user