请在 JavaScript 中帮助我:我正在编写的程序是一个以前缀表示法接收表达式并以中缀表示法输出相同表达式的程序。这个程序背后的想法如下:
如果用户输入1 + 2
预期的输出是+ 1 2
. 所有有效符号都是+, -, *, /, and %
. 用户可以输入的数字数量应该是无限的(例如,如果我输入1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
,程序应该返回+ 1 2 3 4 5 6 7 8 9 10
)。
有人可以帮我填写循环的注释部分,如果您认为有更好的方法完全解决这个问题,我愿意接受!
function infix(input) {
var x = input.split(''); // splits each variable and stores it in an array
var output = [];
var final = " "; // will be used to store our infix expression
for (var i = 0; i < x.length; i++) {
//if x[i] is any of the following : "+, -, *, /, or %" , store it in array output at index 0
//else if x[i] is a number : store it in an index of array output that is >= 1
}
for (var j = 0; j < output.length; j++) {
var final = x[0] + x[j];
}
console.log(final);
}
infix("1 + 2 + 3")