1

我是编程的新手。我有问题如何计算三角形的面积和周围。

我有一些代码,但输出结果总是错误的计算。

function fungsiLuasSegitiga(a, b) {
  var luas = (1 / 2) * a * b;
  return luas;
}

function fungsiKllSegitiga(a, b) {
  var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
  var kll = a + b + c;
  return kll;
}

var x = prompt("masukkan nilai alas segitiga!");
var y = prompt("masukkan nilai tinggi segitiga!");

var d = fungsiLuasSegitiga(x, y);
var e = fungsiKllSegitiga(x, y);

alert("luas segitiga adalah " + d);
alert("keliling segitiga adalah " + e);

当我输入数字 3 和 4 时,函数 fungsiLuasSegitiga 计数为 345,但结果必须为 12 (3+4+5)。

4

1 回答 1

2

prompt返回一个字符串而不是一个数字。所以,kll计算最终是"3" + "4" + 5。这将连接字符串而不是对数字求和。您需要先将其解析为一个数字,然后再分配给它xy或者使用一元加运算符parseInt

function fungsiLuasSegitiga(a, b) {
  var luas = (1 / 2) * a * b;
  return luas;
}

function fungsiKllSegitiga(a, b) {
  var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
  var kll = a + b + c;
  return kll;
}

var x = +prompt("masukkan nilai alas segitiga!");
var y = +prompt("masukkan nilai tinggi segitiga!");

var d = fungsiLuasSegitiga(x, y);
var e = fungsiKllSegitiga(x, y);

alert("luas segitiga adalah " + d);
alert("keliling segitiga adalah " + e);

于 2019-05-22T03:22:42.873 回答