简单JavaScript程序
我试图在一个在线编码环境中解决一个简单的预热问题 问题是要找到通过stdin输入的数组的累积和。下面是提供的代码简单JavaScript程序,javascript,Javascript,我试图在一个在线编码环境中解决一个简单的预热问题 问题是要找到通过stdin输入的数组的累积和。下面是提供的代码 process.stdin.resume(); process.stdin.setEncoding('ascii'); var input_stdin = ""; var input_stdin_array = ""; var input_currentline = 0; process.stdin.on('data', function (data) { input_s
process.stdin.resume();
process.stdin.setEncoding('ascii');
var input_stdin = "";
var input_stdin_array = "";
var input_currentline = 0;
process.stdin.on('data', function (data) {
input_stdin += data;
});
process.stdin.on('end', function () {
input_stdin_array = input_stdin.split("\n");
main();
});
function readLine() {
return input_stdin_array[input_currentline++];
}
/////////////// ignore above this line ////////////////////
function main() {
var n = parseInt(readLine());
arr = readLine().split(' ');
arr = arr.map(Number);
}
这是我添加的代码
var count = 0;
for(i= 0; i<n; i++){
arr[i]+= count;
}
return count;
var计数=0;
因为(i=0;i我知道你在这里做错了什么
arr[i]+= count;
这样,您就可以将count
添加到arr[i]
您尝试执行的操作(似乎是计算数组的总和)将如下所示:
count += arr[i];
它将arr[i]
添加到count
如果我回答错了,我道歉。我想这是黑客攻击?我认为错的是你增加了数组元素/项的值,而不是计数。
你正在学习编写代码,这太棒了,我想说,坚持下去
var count = 0;
var n = arr.length
for(i= 0; i<n; i++){
count += arr[i];
}
return count;
var计数=0;
var n=阵列长度
对于(i=0;i要通过HR的标准要求,您需要
console.log(count);
或
什么?你写了代码并要求我们解释你写了什么?。哪里出了“问题”?@nicael也许你应该在投票前回头看两遍这个问题。有一块提供的代码我似乎无法理解。我知道我写了什么。从提供的代码中我能收集到的只是他们正在初始化自己的Input字段工作。忽略忽略行上方的代码的原因可能是因为它使用了自己的函数。@user2864740它在标准输出上没有提供任何输出。这就是为什么我试图理解提供的代码。您是否将此部分添加到主函数中?我认为您应该console.log(count)
notreturn
。感谢它最终完成了console.log。您能帮我理解这行的意思吗arr=arr.map(数字)
对iterable对象的映射操作意味着将创建一个新的数组,其结果是对数组中的每个元素调用提供的函数。Number是一个js
方法/类。因此,在您的情况下,它基本上是将数组中每个元素调用Number的结果重新分配给arr代码>变量。map
和reduce
函数有助于将应用程序中的代码简化为样板代码。调用map与执行以下操作相同:for(var i=0;i
。map
简洁明了。哦,看起来,就像上面提到的答案一样,你的挑战者想要的是totalconsole.log()
ed。
process.stdout.write(count);