Trong bài viết này, chúng ta sẽ tìm hiểu cách xây dựng máy tính đơn giản sử dụng switch-case. Câu lệnh switch đánh giá biểu thức, khớp giá trị biểu thức với mệnh đề case, và thực thi câu lệnh liên quan đến case đó.
Dưới đây là các phép toán số học chúng ta sẽ thực hiện:
- Cộng
- Trừ
- Nhân
- Chia
- Chia lấy phần nguyên
- Modulo (chia lấy dư)
Dưới đây là minh họa:
Đầu vào
Giả sử đầu vào của chúng ta là:
Hai đầu vào: 40.0 và 12.0 Toán tử: %
Đầu ra
Đầu ra mong muốn sẽ là:
Kết quả là 40.0 % 12.0 = 4.0
Thuật Toán
Bước 1 - BẮT ĐẦU Bước 2 - Khai báo ba biến my_input_1, my_input_2, my_result và biến ký tự operator Bước 3 - Đọc giá trị từ người dùng hoặc định nghĩa giá trị Bước 4 - Định nghĩa các case statement nhận giá trị 'operator' làm switch case để tính tổng, hiệu, tích, thương, modulus Bước 5 - Truyền giá trị operator cho case statements để tính phép toán giữa 'my_input_1' và 'my_input_2' Bước 6 - Hiển thị kết quả Bước 7 - DỪNG
Ví Dụ 1
Ở đây, đầu vào được nhập bởi người dùng dựa trên nhắc nhở. Bạn có thể thử ví dụ này trực tiếp trong công cụ coding ground của chúng tôi.
import java.util.Scanner;
public class OperatorSwitch {
public static void main(String[] args) {
char operator;
Double my_input_1, my_input_2, my_result;
System.out.println("Các gói cần thiết đã được nhập");
Scanner my_scanner = new Scanner(System.in);
System.out.println("Đối tượng đọc đã được định nghĩa");
System.out.println("Nhập số thứ nhất");
my_input_1 = my_scanner.nextDouble();
System.out.println("Nhập số thứ hai");
my_input_2 = my_scanner.nextDouble();
System.out.println("Nhập bất kỳ toán tử sau: +, -, *, /, %");
operator = my_scanner.next().charAt(0);
switch (operator) {
case '+':
my_result = my_input_1 + my_input_2;
System.out.println(my_input_1 + " + " + my_input_2 + " = " + my_result);
break;
case '-':
my_result = my_input_1 - my_input_2;
System.out.println(my_input_1 + " - " + my_input_2 + " = " + my_result);
break;
case '*':
my_result = my_input_1 * my_input_2;
System.out.println(my_input_1 + " * " + my_input_2 + " = " + my_result);
break;
case '/':
my_result = my_input_1 / my_input_2;
System.out.println(my_input_1 + " / " + my_input_2 + " = " + my_result);
break;
case '%':
my_result = my_input_1 % my_input_2;
System.out.println(my_input_1 + " % " + my_input_2 + " = " + my_result);
break;
default:
System.out.println("Toán tử bạn chọn không hợp lệ");
break;
}
}
}
Đầu Ra
Các gói cần thiết đã được nhập Đối tượng đọc đã được định nghĩa Nhập số thứ nhất: 40 Nhập số thứ hai: 12 Chọn bất kỳ toán tử sau: +, -, *, /, % % 40.0 % 12.0 = 4.0
Ví Dụ 2
Ở đây, số nguyên đã được định nghĩa trước, và giá trị của nó được truy cập và hiển thị trên bảng điều khiển.
public class OperatorSwitch {
public static void main(String[] args) {
char operator;
Double my_input_1, my_input_2, my_result;
my_input_1 = 40.0;
my_input_2 = 12.0;
operator = '%';
System.out.println("Hai số được định nghĩa là " + my_input_1 + " và " + my_input_2);
System.out.println("Toán tử được định nghĩa là " + operator);
switch (operator) {
case '+':
my_result = my_input_1 + my_input_2;
System.out.println(my_input_1 + " + " + my_input_2 + " = " + my_result);
break;
case '-':
my_result = my_input_1 - my_input_2;
System.out.println(my_input_1 + " - " + my_input_2 + " = " + my_result);
break;
case '*':
my_result = my_input_1 * my_input_2;
System.out.println(my_input_1 + " * " + my_input_2 + " = " + my_result);
break;
case '/':
my_result = my_input_1 / my_input_2;
System.out.println(my_input_1 + " / " + my_input_2 + " = " + my_result);
break;
case '%':
my_result = my_input_1 % my_input_2;
System.out.println(my_input_1 + " % " + my_input_2 + " = " + my_result);
break;
default:
System.out.println("Toán tử bạn chọn không hợp lệ");
break;
}
}
}
Đầu Ra
Hai số được định nghĩa là 40.0 và 12.0 Toán tử được định nghĩa là % 40.0 % 12.0 = 4.0