Java Programming Lab-2 Solutions

7 days ago

Java Programming Lab-2 Solutions

Here are the solutions for all 10 programming problems:

1. Multiplication Table

import java.util.Scanner;

public class MultiplicationTable {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter an integer: ");
        int num = sc.nextInt();
        
        System.out.println("Multiplication Table of " + num + ":");
        for (int i = 1; i <= 10; i++) {
            System.out.println(num + " x " + i + " = " + (num * i));
        }
        sc.close();
    }
}

Sample Output:

Enter an integer: 5
Multiplication Table of 5:
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
...
5 x 10 = 50

2. Natural Numbers up to 100 (using different loops)

(a) Using for loop

public class NaturalNumbersFor {
    public static void main(String[] args) {
        System.out.println("Natural numbers up to 100 (for loop):");
        for (int i = 1; i <= 100; i++) {
            System.out.print(i + " ");
        }
    }
}

(b) Using while loop

public class NaturalNumbersWhile {
    public static void main(String[] args) {
        System.out.println("Natural numbers up to 100 (while loop):");
        int i = 1;
        while (i <= 100) {
            System.out.print(i + " ");
            i++;
        }
    }
}

(c) Using do-while loop

public class NaturalNumbersDoWhile {
    public static void main(String[] args) {
        System.out.println("Natural numbers up to 100 (do-while loop):");
        int i = 1;
        do {
            System.out.print(i + " ");
            i++;
        } while (i <= 100);
    }
}

Sample Output (for all three):

1 2 3 4 ... 100

3. Display Digits Used in a Number

import java.util.Scanner;

public class DisplayDigits {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter a number: ");
        int num = Math.abs(sc.nextInt()); // Handle negative numbers
        
        System.out.print("Digits used: ");
        if (num == 0) {
            System.out.print("0");
        } else {
            boolean[] digitsPresent = new boolean[10];
            while (num > 0) {
                int digit = num % 10;
                digitsPresent[digit] = true;
                num /= 10;
            }
            
            for (int i = 0; i < 10; i++) {
                if (digitsPresent[i]) {
                    System.out.print(i + " ");
                }
            }
        }
        sc.close();
    }
}

Sample Output:

Enter a number: 1234554321
Digits used: 1 2 3 4 5 

4. Count Digits in a Number

import java.util.Scanner;

public class CountDigits {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter a number: ");
        int num = Math.abs(sc.nextInt()); // Handle negative numbers
        
        int count = (num == 0) ? 1 : 0;
        while (num > 0) {
            count++;
            num /= 10;
        }
        
        System.out.println("Number of digits: " + count);
        sc.close();
    }
}

Sample Output:

Enter a number: 12345
Number of digits: 5

5. Reverse a Number

import java.util.Scanner;

public class ReverseNumber {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter a number: ");
        int num = sc.nextInt();
        
        int reversed = 0;
        int original = num;
        while (num != 0) {
            int digit = num % 10;
            reversed = reversed * 10 + digit;
            num /= 10;
        }
        
        System.out.println("Reverse of " + original + " is " + reversed);
        sc.close();
    }
}

Sample Output:

Enter a number: 12345
Reverse of 12345 is 54321

6. Check Palindrome Number

import java.util.Scanner;

public class PalindromeCheck {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter a number: ");
        int num = sc.nextInt();
        
        int reversed = 0;
        int original = num;
        while (num != 0) {
            int digit = num % 10;
            reversed = reversed * 10 + digit;
            num /= 10;
        }
        
        if (original == reversed) {
            System.out.println(original + " is a palindrome");
        } else {
            System.out.println(original + " is not a palindrome");
        }
        sc.close();
    }
}

Sample Output:

Enter a number: 12321
12321 is a palindrome

7. Display Day Name

import java.util.Scanner;

public class DayName {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter a number (1-7): ");
        int day = sc.nextInt();
        
        String dayName;
        switch (day) {
            case 1: dayName = "Sunday"; break;
            case 2: dayName = "Monday"; break;
            case 3: dayName = "Tuesday"; break;
            case 4: dayName = "Wednesday"; break;
            case 5: dayName = "Thursday"; break;
            case 6: dayName = "Friday"; break;
            case 7: dayName = "Saturday"; break;
            default: dayName = "Invalid day number";
        }
        
        System.out.println("Day: " + dayName);
        sc.close();
    }
}

Sample Output:

Enter a number (1-7): 3
Day: Tuesday

8. Arithmetic Operations using Switch

import java.util.Scanner;

public class ArithmeticSwitch {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter first number: ");
        double num1 = sc.nextDouble();
        System.out.print("Enter second number: ");
        double num2 = sc.nextDouble();
        
        System.out.println("Choose operation:");
        System.out.println("1. Addition");
        System.out.println("2. Subtraction");
        System.out.println("3. Multiplication");
        System.out.println("4. Division");
        System.out.print("Enter choice (1-4): ");
        int choice = sc.nextInt();
        
        double result = 0;
        switch (choice) {
            case 1:
                result = num1 + num2;
                System.out.println("Sum: " + result);
                break;
            case 2:
                result = num1 - num2;
                System.out.println("Difference: " + result);
                break;
            case 3:
                result = num1 * num2;
                System.out.println("Product: " + result);
                break;
            case 4:
                if (num2 != 0) {
                    result = num1 / num2;
                    System.out.println("Quotient: " + result);
                } else {
                    System.out.println("Cannot divide by zero");
                }
                break;
            default:
                System.out.println("Invalid choice");
        }
        sc.close();
    }
}

Sample Output:

Enter first number: 10
Enter second number: 5
Choose operation:
1. Addition
2. Subtraction
3. Multiplication
4. Division
Enter choice (1-4): 3
Product: 50.0

9. Circle Calculations (Area or Circumference)

import java.util.Scanner;

public class CircleCalculations {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter radius of circle: ");
        double radius = sc.nextDouble();
        
        System.out.println("Choose calculation:");
        System.out.println("1. Area");
        System.out.println("2. Circumference");
        System.out.print("Enter choice (1-2): ");
        int choice = sc.nextInt();
        
        switch (choice) {
            case 1:
                double area = Math.PI * radius * radius;
                System.out.printf("Area: %.2f\n", area);
                break;
            case 2:
                double circumference = 2 * Math.PI * radius;
                System.out.printf("Circumference: %.2f\n", circumference);
                break;
            default:
                System.out.println("Invalid choice");
        }
        sc.close();
    }
}

Sample Output:

Enter radius of circle: 5
Choose calculation:
1. Area
2. Circumference
Enter choice (1-2): 1
Area: 78.54

10. Menu-Based Number Checker

import java.util.Scanner;

public class NumberChecker {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter a number: ");
        double num = sc.nextDouble();
        
        System.out.println("Choose check:");
        System.out.println("1. Odd/Even");
        System.out.println("2. Positive/Negative");
        System.out.print("Enter choice (1-2): ");
        int choice = sc.nextInt();
        
        switch (choice) {
            case 1:
                if (num % 2 == 0) {
                    System.out.println(num + " is even");
                } else {
                    System.out.println(num + " is odd");
                }
                break;
            case 2:
                if (num > 0) {
                    System.out.println(num + " is positive");
                } else if (num < 0) {
                    System.out.println(num + " is negative");
                } else {
                    System.out.println(num + " is zero");
                }
                break;
            default:
                System.out.println("Invalid choice");
        }
        sc.close();
    }
}

Sample Output:

Enter a number: -7
Choose check:
1. Odd/Even
2. Positive/Negative
Enter choice (1-2): 1
-7.0 is odd

Each program includes proper input handling, comments, and follows good coding practices. The programs demonstrate various Java concepts including loops, conditional statements, switch-case, and basic arithmetic operations.