【问题标题】:Addition and Subtraction with Negative Numbers负数的加法和减法
【发布时间】:2014-12-21 13:41:12
【问题描述】:

我尝试用这段代码加减负数

var num1 = parseInt(document.form1.num1.value);
var num2 = parseInt(document.form1.num2.value);
if(operand == "plus"){
    var sum = parseInt(num1+num2);
    // add alerts to check
    alert (num1);
    alert (num2);
    alert (sum);
}else{
    var sum = parseInt(num1-num2);
}

但是当我打印结果(总和)时,程序会忽略负数并将其视为正数。我尝试删除 parseInt 但没有任何变化。 对于那些感到困惑的人:我的输入是 num1 和 num2。使用我的代码,如果我输入 (4) 和 (-2) 并选择加号,则 sum = 6。他们不会将负数视为负数,而是将其视为正数。

更新:显然即使我输入 (-2),他们也将其保存为 (2)。

【问题讨论】:

  • num1num2 是什么?
  • 尝试:var sum = parseInt(num1) - parseInt(num2);
  • parseInt(num1) - 如果我有 2 个负数,则 parseInt(num2) 将不起作用。
  • @jack ,如果我选择加号,输入 4 和 5,总和是 9。如果我选​​择减号,输入 6 和 2,总和是 4。没有错分支。
  • 你知道如果你减去一个负数,它会得到与添加相同数字的绝对值相同的结果吗?示例:-4 - -9 = 5 = -4 + 9.

标签: javascript html negative-number


【解决方案1】:

假设 sum1 和 sum2 是字符串文字,你应该做的是parseInt(num1) + parseInt(num2)

看来你的问题是你应用了双重否定,这使得一个积极:

4 - -2 == 4 + 2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-30
    • 1970-01-01
    • 2019-08-27
    • 1970-01-01
    相关资源
    最近更新 更多