我想为基本的数学运算制作计算器。如果用户输入任何其他字符而不是/,*,-,+程序,则应退出。但用户只能输入其他字符才能退出。程序必须重新显示主菜单。
我尝试过很多次,只能通过数学运算。但是我想不出办法。
这是我的代码
package com.cv;
import java.util.Scanner;
class Q_04 {
public static double math(double x, double y, char a) {
if (a == '/') {
return x / y;
} else if (a == '*') {
return x * y;
} else if (a == '+') {
return x + y;
} else if (a == '-') {
return x - y;
}
return a;
}
public static void main(String[] argv) {
System.out.println(
"\t*:For multiplication\n\t/:For division\n\t+:For addition\n\t-:For substraction\n\tAny other character:To exit mathematical operation");
Scanner sc = new Scanner(System.in);
String z = sc.nextLine();
char a = z.charAt(0);
System.out.print("Enter Number 1: ");
double x = sc.nextDouble();
System.out.print("Enter Number 2: ");
double y = sc.nextDouble();
double result = 0;
System.out.println("Answer is " + math(x, y, a));
}
}
最佳答案
我不会键入代码,但会写出大致思路。首先有一个while循环,它将使操作符生效。如果运算符有效,则执行break;
,否则将重复输入。只需执行此操作即可解决您的问题。其余代码将随后出现。注意范围(即,在方括号内声明变量)。
编辑:
如果要中断程序,只需添加一条if语句if (!(operator.equals("*") || operator.equals("+") ...
etc。另外,如果您确实想要好的设计,则可以使用哈希集来存储操作。
关于java - Java基本CLI计算器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39045914/