Utilisez Java pour écrire une calculatrice, réaliser la fonction d'addition, de soustraction, de multiplication et de division, et être en mesure de recevoir de nouvelles données de manière cyclique, grâce à l'interaction de l'utilisateur

public class HomeworkDemo {
    
    
    public static void main(String[] args) {
    
    
        Scanner scanner = new Scanner(System.in);


        double result = 0;
        while (scanner.hasNextDouble()) {
    
    
            double i = scanner.nextDouble();
            String str = scanner.next();
            double j = scanner.nextDouble();

            switch (str) {
    
    
                case "+":

                    result = add(i, j);

                    System.out.println(result);
                    break;
                case "-":

                    result = minus(i, j);

                    System.out.println(result);
                    break;
                case "*":

                    result = multiply(i, j);

                    System.out.println(result);
                    break;
                case "/":if(j==0){
    
    
                    System.out.println("除数不能为零");
                    break;
                }else

                    result = divide(i, j);

                    System.out.println(result);
                    break;
            }if (str.equals("quit")){
    
    
                System.out.println("退出计算器");
                break;
            }


        }scanner.close();
    }

    //加
    public static double add ( double a , double b){
    
    
        return a + b;
    }//减
    public static double minus ( double a , double b){
    
    
        return a - b;
    }//乘
    public static double multiply ( double a , double b){
    
    
        return a * b;
    }//除
    public static double divide ( double a , double b){
    
    
        return a / b;
    }


}

Problèmes rencontrés: 1. Utilisation de scanner.hasNext comme expression booléenne de while, ce qui entraîne l'échec de l'attribution d'une valeur au premier nombre lorsqu'un nouvel ensemble de données à calculer est entré, et il saute directement au jugement du scanner .hasNext. Changez donc l'expression booléenne de while en scanner.hasNextDouble
2. Lorsque le diviseur est égal à zéro, non seulement il affiche "Le diviseur ne peut pas être zéro", mais affiche également la valeur 0 affectée au résultat au début et ajoutez une rupture; puis résolvez le problème.
3. En utilisant l'idée de solution étape par étape, vous pouvez créer une calculatrice qui peut effectuer des opérations d'addition et une calculatrice qui peut effectuer quatre opérations arithmétiques.

Je suppose que tu aimes

Origine blog.csdn.net/qq_43021902/article/details/113822261
conseillé
Classement