为了账号安全,请及时绑定邮箱和手机立即绑定

我在编写阶乘程序时遇到困难

我在编写阶乘程序时遇到困难

皈依舞 2021-08-25 15:27:47
程序应该要求用户输入一个正整数并打印一个阶乘表。如果输入小于 0,输出或程序应该停止。给我一个正整数:5输出:5!= 5 x 4 x 3 x 2 x 15 的阶乘是 120给我一个正整数:-5输出:无效输入!程序停止ps:我是初学者。我正在使用 Netbean IDE
查看完整描述

2 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

这应该有效。只需循环数字。


var input = prompt("What number would you like me to give you the factorial of?");

if (input > 0) {

  var answer = 1;

  var string = input + " =";

  for (var i = input; i >= 1; i--) {

    answer *= i;

    string += " " + i

    if (i != 1) {

      string += " x"

    }

  }


  console.log(string)

  console.log("The factorial of " + input + " is " + answer)

} else {console.log("Invalid input! Program stopped.")}

Java(假设输入在变量中input):


if (input > 0) {

  int answer = 1;

  String stringAnswer = input + " =";

  for (int i = input; i >= 1; i--) {

    answer *= i;

    stringAnswer += " " + i

    if (i != 1) {

      stringAnswer += " x"

    }

  }


  System.out.println(stringAnswer)

  System.out.println("The factorial of " + input + " is " + answer)

} else {System.out.println("Invalid input! Program stopped.")}


查看完整回答
反对 回复 2021-08-25
?
慕容708150

TA贡献1831条经验 获得超4个赞

您可以检查数字是否小于 0 否则计算阶乘


let x = prompt('Please enter a positive integer');


if (x < 0) {

  console.log('invalid Input! Programmed Stop')

} else {

  let val = 1;

  for (let k = 1; k <= x; k++) {

    val *= k

  }

  console.log(val)

}


查看完整回答
反对 回复 2021-08-25
  • 2 回答
  • 0 关注
  • 160 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信