0% found this document useful (0 votes)
108 views

Conditional Statement: If-Then, If-Else, Switch

The document discusses conditional statements such as if-then, if-else, and switch in Java. It provides examples of code snippets using these statements and exercises to practice analyzing, tracing, and converting between the different conditional statement formats. The exercises focus on conditional logic, output of code snippets, and rewriting switch statements as if-else or if-then statements.

Uploaded by

etud3cl
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
108 views

Conditional Statement: If-Then, If-Else, Switch

The document discusses conditional statements such as if-then, if-else, and switch in Java. It provides examples of code snippets using these statements and exercises to practice analyzing, tracing, and converting between the different conditional statement formats. The exercises focus on conditional logic, output of code snippets, and rewriting switch statements as if-else or if-then statements.

Uploaded by

etud3cl
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

King Saud University

College of Computer & Information Science


CSC111 – Tutorial 06

Conditional statement: if-then, if-else, switch

Objectives:
After completing the following exercises, students will be able to:
 Trace programs that use if-then , if-else and switch statement
 Analyze programs with nested conditional statement
 rewrite switch statements as if-else statements or if-then statements

Exercise 1:
What is the output of each of the following code fragments?
(given the declaration int a=1, b=2, c=3;):

1. if (6 < 2 * 5) 6. int x = 100; int y = 200;


System.out.print("Hello"); if (x > 100 && y <=200)
System.out.print(" There"); System.out.print(x+" "+y+" "+(x+y));
else
2. if(a>b) System.out.print(x+" "+y+" "+(2*x-y));
if(a>c)
System.out.println("1111"); 7. if (a < c)
else System.out.println("*");
System.out.println("2222"); else if (a == c)
System.out.println("&");
3. if (a < c) else
System.out.println("*"); System.out.println("$");
else if (a == b)
System.out.println("&"); 8. if(++a > b++ || a-- > 0)
else c++;
System.out.println("$"); else
c--;
4. if(a<b) System.out.println(a+" "+b+" "+c);
System.out.println("####");
else 9. if(a<b){
System.out.println("&&&&"); System.out.println("####");
System.out.println("****"); System.out.println("****");
}
5. if(a>b) else
System.out.println("####"); System.out.println("&&&&");
else
{System.out.println("&&&&"); 10.if ('a' > 'b' || 66 > (int)('A'))
System.out.println("****");} System.out.println("#*#");

Answers:

1. Hello There 5. &&&& 9. ####


2. No output **** ****
3. * 6. 100 200 0 10. #*#
4. #### 7. *
**** 8. 1 2 3
Exercise 2:
1. Write the java statement that assigns 1 to x if y is greater than 0
2. Suppose that score is a variable of type double. Write the java statement that increases
the score by 5 marks if score is between 80 and 90
3. Rewrite in Java the following statement without using the NOT (!) operator:
item = !( (i<10) | | (v>=50) )
4. Write a java statement that prints true if x is an odd number and positive
5. Write a java statement that prints true if both x and y are positive numbers
6. Write a java statement that prints true if x and y have the same sign (-/+)
Answer:

1. if (y > 0) x = 1;
2. if (score >= 80 && score <=90) score += 5;
3. item = i >= 10 && i < 50
4. if (x % 2 != 0 && x > 0) System.out.println(true);
or
System.out.println(x%2 !=0 && x>0); // This prints false otherwise
5. if (x > 0 && y > 0) System.out.println(true);
or
System.out.println(x > 0 && y > 0); // This prints false otherwise
6. if (x * y > 0) System.out.println(true);
or
System.out.println(x * y > 0); // This prints false otherwise

Exercise 3:
Two programs are equivalent if given the same input they produce the same output.
Which of the following programs are equivalent? Why?

// Program A
import java.util.Scanner;
class TestPositive {
public static void main(String [] args) {
Scanner S = new Scanner(System.in);
System.out.print(“Enter a value: ”);
int x = S.nextInt();
if (x > 0) {
System.out.println(“The value is positive:”);
}
else {
if (x < 0) {
System.out.println(“The value is negative:”);
} else {
System.out.println(“The value is zero:”);
}
}
System.out.println(“Good Bye!”);
}
}
// Program B
import java.util.Scanner;
class TestPositive {
public static void main(String [] args) {
Scanner S = new Scanner(System.in);
System.out.print(“Enter a value: ”);
int x = S.nextInt();
if (x > 0) {
System.out.println(“The value is positive:”);
}
if (x < 0) {
System.out.println(“The value is negative:”);
} else {
System.out.println(“The value is zero:”);
}
System.out.println(“Good Bye!”);
}
}

// Program C
import java.util.Scanner;
class TestPositive {
public static void main(String [] args) {
Scanner S = new Scanner(System.in);
System.out.print(“Enter a value: ”);
int x = S.nextInt();
if (x > 0) {
System.out.println(“The value is positive:”);
}
if (x < 0) {
System.out.println(“The value is negative:”);
}
if (x ==0) {
System.out.println(“The value is zero:”);
}
System.out.println(“Good Bye!”);
}
}

Answer:
Programs A and C are equivalent. Program B is different since it gives different output if input
is a positive number greater than zero. For example, 3

Exercise 4:
Convert the following switch statement into if-else statements then into if-then statements:
String dayString1, dayString2, dayString3;
int day = KB.nextInt();
switch (day) {
case 1: dayString1 = "Saturday";
case 2: dayString2 = "Sunday";
break;
case 3: dayString3 = "Monday";
break;
case 4: dayString1 = "Tuesday";
case 5: dayString2 = "Wednesday";
break;
default: dayString3 = "Invalid day";
break;
}
Answer:

if-else:

String dayString1, dayString2, dayString3;


int day = KB.nextInt();
if (day == 1) {
dayString1 = "Saturday";
dayString2 = "Sunday";
}
else
if (day == 2)
dayString2 = "Sunday";
else
if (day == 3)
dayString3 = "Monday";
else
if (day == 4) {
dayString1 = "Tuesday";
dayString2 = "Wednesday";
}
else
if (day == 5)
dayString2 = "Wednesday";
else
dayString3 = "Invalid day";

if-then:

String dayString1, dayString2, dayString3;


int day = KB.nextInt();
if (day == 1) {
dayString1 = "Saturday";
dayString2 = "Sunday";
}
if (day == 2)
dayString2 = "Sunday";
if (day == 3)
dayString3 = "Monday";
if (day == 4) {
dayString1 = "Tuesday";
dayString2 = "Wednesday";
}
if (day == 5)
dayString2 = "Wednesday";
if (day < 1 || day > 5)
dayString3 = "Invalid day";

You might also like