我正在努力制定一个Javascript函数,该函数允许我根据2条规则从用户输入中创建2个数字。
let userInput;
let num1;
let num2;
规则:num1+num2=userInput和num1-num2必须是尽可能小的正数。
因此,当用户输入5时,函数应该为num1和num2返回3和2,而不是4和1。
你能帮我制定这样一个Javascript函数吗?
提前感谢您的帮助:(
响应时没有收到通知。有很多方法可以解决这个问题,但我会使用Math.ceil()
,它会自动向上取整任何小数,而Math.floor()
会向下取整。
let userInput = 5;
let num1 = Math.ceil(userInput/2);
let num2 = Math.floor(userInput/2);
console.log(userInput, num1, num2)
另一种方法可以是将userInput
除以2,并使用parseInt()
来截断所有小数,然后将userInput%2
与该结果相加,如果userInput
为奇数,则得到1,如果为偶数,则得到0。用userInput
减去num1
,得到num2
。
let userInput = 5;
let remainder = userInput%2 // 1
let num1 = parseInt(userInput/2) + remainder;
let num2 = userInput - num1;
console.log(userInput, num1, num2)