У меня есть массив чисел 10, 20, 50, 40, 30, 80, 90, 100, 80Удалить п детали после каждого п элементов из массива
Там может быть много чисел, как это возможно. Я хочу сначала отсортировать их в порядке убывания, а затем хочу удалить n количество элементов после каждого n номеров элементов, а затем получить общее количество. Так, например, для. если я хочу, чтобы удалить 2 детали после каждых 3 пунктов из выше массива, то результат должен быть
100, 90, 80, 40, 30, 20 = 360
Я написал код, но он не работает правильно ,
<?php
function offer($items, $buyItems, $get) {
$offerType = $buyItems+1;
$x = $items;
rsort($x);
$y = count($x);
for($i=$y; $i> 0; $i -= $offerType) {
$index = $i-1;
array_splice($x, $index, 1);
}
$arrlength = count($x);
for($z = 0; $z < $arrlength; $z++)
{
echo $x[$z];
echo "\n";
}
echo "Total = " . array_sum($x) . "\n";
}
offer(array(2, 5, 7,16, 6, 8, 40, 90), 2, 1);
?>
Можете ли вы пролить свет на то, что означают '$ buyItems' и' $ offerType', и каковы их домены? Код комментария и отступа. – Mati
$ buyitems - это номер, после которого другие n элементов должны быть удалены, а $ get - количество элементов, которые удаляются. $ offertype - это просто переменная, чтобы сделать код соответствующим образом. Я новичок в php, поэтому не был уверен. – user4381753