gpt4 book ai didi

Javascript。错误的比较输出

转载 作者:行者123 更新时间:2023-11-30 20:23:42 24 4
gpt4 key购买 nike

fs.readFile('./input.txt', (error, data) => {
if(error)
console.log(error);
const input = data.toString();
const dataArray = input.split(/[\n\r ]+/);
const lastItem = dataArray.length;
let accumulator = 0;
let counter = 0;
for(let i=0; i<lastItem-1; i++) {
let tempArray = dataArray[i];
let splitArray = tempArray.split('x');
let a = splitArray[0];//length
let b = splitArray[1];//width
let c = splitArray[2];//height
let d = a<b? (b<c?c:b) : (a<c?c:a);
let output = 0;
if(d === a)
output = (2*b + 2*c + a*b*c);
else if(d === b)
output = (2*a + 2*c + a*b*c);
else
output = (2*b + 2*a + a*b*c);
accumulator += output;
}})

输入:3x11x2413x5x191x9x27

这是我的代码和输入。而且我想知道为什么我在获得“d”数字时会得到错误的比较。我希望“d”成为输入中每 3 个数字中最大的一个。 对我来说真正奇怪的是当我想 console.log(a < b) 第一个输入应该是真的(因为 3 小于 11 )但是给了我假并且我不能为'd'分配任何好的值因为我不知道我的比较有什么问题。(我正在使用节点来执行我的代码,如果这给你任何线索什么是错的)请帮助:(

最佳答案

在您的代码中,a、b、c 是字符串。您正在拆分一个字符串,结果得到一个字符串。您需要转换为一个数字。

let a = +splitArray[0];//length
let b = +splitArray[1];//width
let c = +splitArray[2];

将字符串转换为数字,您的比较将起作用

关于Javascript。错误的比较输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51163499/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com