xiaolai 6 months ago
parent 80352db2ee
commit 1fba01512d

@ -1,72 +1,48 @@
import java.util.Scanner;
public class Calculator {
// 加法
public double add(double a, double b) {
return a + b;
}
// 减法
public double subtract(double a, double b) {
return a - b;
}
// 乘法
public double multiply(double a, double b) {
return a * b;
}
// 除法
public double divide(double a, double b) {
if (b == 0) {
throw new IllegalArgumentException("Denominator cannot be zero.");
}
return a / b;
}
// 取余
public double remainder(double a, double b) {
return a % b;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Calculator calc = new Calculator();
System.out.println("Enter first number:");
double num1 = scanner.nextDouble();
System.out.println("Enter second number:");
double num2 = scanner.nextDouble();
System.out.println("Choose operation (+, -, *, /, %):");
char operation = scanner.next().charAt(0);
double result;
switch (operation) {
case '+':
result = calc.add(num1, num2);
break;
case '-':
result = calc.subtract(num1, num2);
break;
case '*':
result = calc.multiply(num1, num2);
break;
case '/':
result = calc.divide(num1, num2);
break;
case '%':
result = calc.remainder(num1, num2);
break;
default:
System.out.println("Invalid operation");
scanner.close();
return;
import javax.swing.*;
import java.awt.*;
public class SimpleCalculator extends JFrame {
private JTextField display;
private JPanel panel;
private double operand1 = 0;
private double operand2 = 0;
private char operator;
private boolean userIsTypingSecondNumber = false;
public SimpleCalculator() {
setTitle("Simple Calculator");
setSize(400, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
// Display text field
display = new JTextField();
display.setEditable(false);
display.setHorizontalAlignment(SwingConstants.RIGHT);
add(display, BorderLayout.NORTH);
// Panel for buttons
panel = new JPanel();
panel.setLayout(new GridLayout(5, 4, 10, 10));
// Add numbers and operations to panel
String[] buttons = {
"7", "8", "9", "/",
"4", "5", "6", "*",
"1", "2", "3", "-",
"0", ".", "=", "+",
"C"
};
for (String text : buttons) {
JButton button = new JButton(text);
button.setFont(new Font("Verdana", Font.PLAIN, 24));
button.setFocusable(false);
panel.add(button);
button.addActionListener(new ButtonClickListener());
}
System.out.println("Result: " + result);
scanner.close();
}
}
add(panel, BorderLayout.CENTER);
}
Loading…
Cancel
Save