Recursive Multiply

import java.util.Scanner;

public class RecursiveMultiply {
    public static void main(String[] args) {
        try (Scanner scanner = new Scanner(System.in)) {
            int a = getInput(scanner, "Enter the first positive integer: ");
            int b = getInput(scanner, "Enter the second positive integer: ");

            int result = mult(a, b);
            System.out.println(a + " * " + b + " = " + result);
        }
    }

    public static int getInput(Scanner scanner, String prompt) {
        int num = 0;
        while (true) {
            System.out.print(prompt);
            try {
                num = Integer.parseInt(scanner.nextLine());
                if (num <= 0) {
                    System.out.println("Please enter a positive integer.");
                } else {
                    break;
                }
            } catch (NumberFormatException e) {
                System.out.println("Invalid input. Please enter a valid integer.");
            }
        }
        return num;
    }

    public static int mult(int i, int j) {
        return (i == 1) ? j : j + mult(i - 1, j);
    }
}

 

Scroll to Top