У меня есть массив, включающий числа, в которых порядок массива фиксирован.
Я бы хотел посмотреть, сколько элементов я могу взять из этого массива с моим размером заказа в JS
Мой коддает неверные результаты, например, 500 единиц могут купить первые 2 предмета и 0,66 из 3-го предмета, так что всего 2,66 можно взять, но код дает 4. Для 250 единиц я могу взять 1-й предмет полностью и 0,75 из второго предмета1,75 можно взять, но код дает 1,5.
Для 300 дает 2, это правда, но обычно дает неверный результат.
Я изменил строку результата внутри или снаружи для for и, если условия, это влияет на результат, но снова на результатыневерны (для данного массива 2100 единиц размера заказа будут принимать все элементы с 6 результатами)
function calculateOrder() {
var coinArray = [100, 200, 300, 400, 500, 600];
var orderSize = 500;
var sum = 0;
var i = 0;
for (i = 0; i < coinArray.length - 1; i++) {
if (sum < orderSize) {
sum += coinArray[i];
}
return i + (orderSize - sum) / coinArray[i];
}
}
document.write(calculateOrder());