У меня есть задача рассчитать оптимальное значение для набора значений или данных. Я нашел прилагаемый алгоритм для вычисления k как оптимального значения и записи следующего кода в javascript, но он не работает. Не могли бы вы помочь мне найти правильный способ расчета оптимального значения и какие ошибки в коде? (этот метод позволяет узнать оптимальное значение для потребления потребителем газа в течение всего года, значения берутся каждые полчаса)
const pulses=[31, 37, 34, 32, 32, 33, 41, 32, 33, 32, 39, 43, 37, 32, 33, 33, 31, 27, 33, 25, 25, 25, 26, 30, 26, 29, 30, 24, 25, 24, 31, 28, 22, 22, 22, 25, 32, 33, 24, 22, 22, 21, 23, 22, 25, 28, 22, 22, 21, 25, 31, 23, 22, 22, 24, 31, 23, 22, 23, 26, 25, 21, 25, 32, 25, 22, 23, 24, 24, 24, 33, 25, 24, 24, 24, 30, 29, 25, 24, 24, 30, 28, 25, 24, 25, 28, 33, 31, 29, 34, 36, 26, 25, 26, 25, 27, 32, 27, 27];
let i=pulses.indexOf();
let overR=0;
let lessR=0;
let k;
overRate = ()=>
{
overR=(pulses[i+1] - k+overR);
return overR
};
lessRate = ()=>
{
lessR=(pulses[i+1] - k+lessR);
return lessR
};
for(let i=0; i<pulses.length; i++)
{
if(pulses[i+1]!==pulses[i])
{
k = pulses[i].valueOf()
}
if(pulses[i+1] > k)
{
overRate()
}
else if(pulses[i+1]<k)
{
lessRate()
};
}
if (overR>lessR)
{
k = k + ((overR - lessR)/2);
};
console.log(k);