Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Chương trình Java tìm BCNN của hai số


Trong bài viết này, chúng ta sẽ tìm hiểu cách tính BCNN (Bội chung nhỏ nhất) của hai số trong Java. BCNN của hai số là số nguyên dương nhỏ nhất chia hết cho cả hai số.

Dưới đây là minh họa:

Đầu vào

Giả sử đầu vào:

24 và 18

Đầu ra

Kết quả mong đợi:

BCNN của hai số là 72

Thuật toán

Bước 1 - BẮT ĐẦU
Bước 2 - Khai báo 3 số nguyên: input_1, input_2, lcm
Bước 3 - Nhập hai số từ người dùng hoặc hardcode
Bước 4 - Đọc giá trị
Bước 5 - Dùng vòng lặp while từ số lớn hơn trong hai số, kiểm tra 'lcm' chia hết cho cả hai. Nếu đúng in ra và dừng.
Bước 6 - Tăng lcm
Bước 7 - DỪNG

Ví dụ 1: Nhập từ bàn phím

Người dùng nhập dựa trên lời nhắc. Thử trực tiếp trong coding ground.

import java.util.Scanner;
public class LCM {
    public static void main(String[] args) {
        int input_1, input_2, lcm;
        Scanner scanner = new Scanner(System.in);
        System.out.println("A scanner object has been defined");
        System.out.println("Enter the first number:");
        input_1 = scanner.nextInt();
        System.out.println("Enter the second number:");
        input_2 = scanner.nextInt();
        lcm = (input_1 > input_2) ? input_1 : input_2;
        while (true) {
            if (lcm % input_1 == 0 && lcm % input_2 == 0) {
                System.out.printf("The LCM of %d and %d is %d.", input_1, input_2, lcm);
                break;
            }
            ++lcm;
        }
    }
}

Đầu ra

A scanner object has been defined
Enter the first number: 24
Enter the second number: 18
The LCM of 24 and 18 is 72.

Ví dụ 2: Giá trị định nghĩa trước

Hai số đã được định nghĩa trước.

public class LCM {
    public static void main(String[] args) {
        int input_1, input_2, lcm;
        input_1 = 24;
        input_2 = 18;
        System.out.println("The first number is " + input_1);
        System.out.println("The second number is " + input_2);
        lcm = (input_1 > input_2) ? input_1 : input_2;
        while (true) {
            if (lcm % input_1 == 0 && lcm % input_2 == 0) {
                System.out.printf("\nThe LCM of %d and %d is %d.", input_1, input_2, lcm);
                break;
            }
            ++lcm;
        }
    }
}

Đầu ra

The first number is 24
The second number is 18
The LCM of 24 and 18 is 72.