用javascript写的加法运算的两种方法

6 篇文章 0 订阅
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">   
  2. <html>   
  3.   <head>   
  4.     <title>Demo01.html</title>   
  5.        
  6.     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">   
  7.     <meta http-equiv="description" content="this is my page">   
  8.     <meta http-equiv="content-type" content="text/html; charset=UTF-8">   
  9.        
  10.     <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->   
  11.     <script type="text/javascript" src="./js/Demo01.js">   
  12.     </script>   
  13.     <script type="text/javascript">   
  14.     //第一种方法   
  15.     function sum(oper){   
  16.         var num1=document.getElementById("num1").value;   
  17.         var num2=document.getElementById("num2").value;   
  18.         var num3=eval(num1+oper+num2);   
  19.         document.getElementById("num3").value=num3;   
  20.            
  21.            
  22.     }   
  23.     //第二种方法   
  24.     function sum1(){   
  25.         var num1=document.getElementById("num1").value;   
  26.         var num2=document.getElementById("num2").value;   
  27.         if(isNaN(num1)){   
  28.             alert("第一个输入框的格式不对,应该输入非字符类型的数");   
  29.         }else{   
  30.             if(isNaN(num2)){   
  31.                 alert("第二个输入框的格式不对,应该输入非字符类型的数");   
  32.             }else{   
  33.                 var num11=parseInt(num1);   
  34.                 var num22=parseInt(num2);   
  35.                 var num3=num11+num22;   
  36.                 document.getElementById("num3").value=num3;   
  37.             }   
  38.         }   
  39.            
  40.     }   
  41.     </script>   
  42.   </head>   
  43.      
  44.   <body>   
  45.   <input type="text" name="num1" id="num1">-<input type="text" name="num2" id="num2">   
  46. <input type="button" value="=" οnclick="sum('-')"> <!-- 第一种方法 -->   
  47.    <!--  <input type="button" value="=" οnclick="sum1()">--><!-- 第二种方法 -->   
  48.   <input type="text" name="num3" id="num3">   
  49.      
  50.   </body>   
  51. </html>   
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用java中的eval()函数来实现复杂的四则运算。eval()函数可以接收字符串参数,并计算表达式的值。例如: ``` import javax.script.ScriptEngineManager; import javax.script.ScriptEngine; import javax.script.ScriptException; public class Main { public static void main(String[] args) { ScriptEngineManager mgr = new ScriptEngineManager(); ScriptEngine engine = mgr.getEngineByName("JavaScript"); String expression = "1 + 2 * 3"; try { System.out.println(engine.eval(expression)); } catch (ScriptException e) { e.printStackTrace(); } } } ``` 运行上面的代码将会输出 `7.0`,表示 `1 + 2 * 3 = 7`。 请注意,使用eval()函数可能带来安全风险,因为它可以执行任意代码,请谨慎使用。 ### 回答2: 四则运算是指加法、减法、乘法和除法这四种基本运算。在Java中实现复杂的四则运算可以通过定义数据类型和运算符的结合来完成。 为了实现复杂的四则运算,可以定义一个数字类,包含两个实例变量(operands)和一个操作符变量(operator)。operands表示运算的两个操作数,operator表示运算符。 首先,定义一个数字类Number,包含以下方法: 1. 构造方法:接受两个int类型的参数,并将它们赋值给operands。 2. 加法方法(add):将两个operands相加并返回结果。 3. 减法方法(subtract):将两个operands相减并返回结果。 4. 乘法方法(multiply):将两个operands相乘并返回结果。 5. 除法方法(divide):将两个operands相除并返回结果。 然后,定义一个主类Calculator,通过接受输入参数来创建Number对象,并调用相应的方法进行四则运算。计算表达式的过程如下: 1. 从输入中获取操作数和操作符。 2. 根据操作数和操作符创建Number对象。 3. 调用Number对象的相应方法进行运算。 4. 输出结果。 以下是示例代码: ```java public class Number { private int operand1; private int operand2; private char operator; public Number(int operand1, int operand2, char operator) { this.operand1 = operand1; this.operand2 = operand2; this.operator = operator; } public int add() { return operand1 + operand2; } public int subtract() { return operand1 - operand2; } public int multiply() { return operand1 * operand2; } public int divide() { return operand1 / operand2; } } public class Calculator { public static void main(String[] args) { int operand1 = 5; int operand2 = 3; char operator = '+'; Number number = new Number(operand1, operand2, operator); int result; switch (operator) { case '+': result = number.add(); break; case '-': result = number.subtract(); break; case '*': result = number.multiply(); break; case '/': result = number.divide(); break; default: throw new IllegalArgumentException("Invalid operator: " + operator); } System.out.println("结果:" + result); } } ``` 以上代码实现了一个简单的四则运算的Java程序,并输出运算结果。你可以根据需要添加更多的功能或灵活使用输入来进行复杂的四则运算。 ### 回答3: 使用Java编复杂的四则运算可以通过使用变量、判断语句和循环结构来实现。下面是一个示例代码: ```java import java.util.Scanner; public class ComplexCalculator { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个表达式:"); String expression = scanner.nextLine(); // 去除表达式中的空格 expression = expression.replaceAll("\\s+", ""); try { double result = calculate(expression); System.out.println("计算结果为:" + result); } catch (Exception e) { System.out.println("输入的表达式不合法,请重新输入!"); } } public static double calculate(String expression) throws Exception { double result = 0.0; char operator = '+'; int num = 0; boolean isNegative = false; for (int i = 0; i < expression.length(); i++) { char c = expression.charAt(i); if (Character.isDigit(c)) { num = num * 10 + (c - '0'); } else if (c == '-') { if (i == 0 || !Character.isDigit(expression.charAt(i - 1))) { isNegative = true; } else { calculatePartialResult(operator, num, isNegative); num = 0; isNegative = true; } } else if (c == '+' || c == '*' || c == '/') { calculatePartialResult(operator, num, isNegative); num = 0; operator = c; isNegative = false; } else if (c == '(') { int j = i + 1; int parenthesesCount = 1; while (j < expression.length()) { if (expression.charAt(j) == '(') { parenthesesCount++; } else if (expression.charAt(j) == ')') { parenthesesCount--; if (parenthesesCount == 0) { num = (int) calculate(expression.substring(i + 1, j)); i = j; break; } } j++; } } else if (c == ')') { break; } } calculatePartialResult(operator, num, isNegative); result = isNegative ? -result : result; return result; } public static void calculatePartialResult(char operator, int num, boolean isNegative) throws Exception { if (operator == '+') { result += num; } else if (operator == '-') { result -= num; } else if (operator == '*') { result *= num; } else if (operator == '/') { if (num == 0) { throw new Exception("除数不能为0!"); } result /= num; } } } ``` 这段代码实现了一个简单的四则运算计算器。用户输入一个表达式后,程序会将其计算并输出结果。支持加减乘除,包括括号,可以处理负数和小数。如果用户输入的表达式不合法(如除数为0),程序会捕获异常并输出错误信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值