• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dzielenie modulo

0 głosów
785 wizyt
pytanie zadane 24 kwietnia 2018 w PHP przez niezalogowany

Witam, mam taki problem, nie wiem jak stworzyć warunek lub funkcję, za zadanie ma wyświetlić ilość kartonów, ilość kartonów ma być zliczana w taki sposób : 1 karton dla 12 prowadnic i zwiększana jeśli kolejne 12 przekroczone, czyli jeśli mamy np. 8 prowadnic to - 1 karton, 12 prowadnic - 1 karton, 13 prowadnic - 2 kartony, 36 prowadnic - 3 kartony, itd. Liczbę prowadnic pobieram z bazy.

$box = (2 * $item["product_quantity]);

if($box <= 12) {
	$this->txtBoxQuantity->Text = 1;
}
else {

	// petla ?
}

 

2 odpowiedzi

0 głosów
odpowiedź 24 kwietnia 2018 przez Chess Szeryf (76,730 p.)
wybrane 25 kwietnia 2018
 
Najlepsza
<?php 

$fences_arr=[8,12,13,36,100,120];

function QuantityCarton($fences){ 
	$result = $fences/12;
	if($result>=0){
		if(is_float($result)){
			return ceil($result);
		}else{ 
			return $result;
		}
	}
}
for($i=0;$i<count($fences_arr);$i++){ 
	echo "Quantity Cartons for ".$fences_arr[$i]." is ".QuantityCarton($fences_arr[$i])."<br />";
}
?>

Jeśli te dane pobierasz z bazy to zamień index'y asocjacyjne na te ponumerowane od zera do x, czyli skorzystaj z jednej z tych dwóch instrukcji, może można z jakichś innych, nie wiem:

$row = $result->fetch_array(MYSQLI_NUM);
// or
$result = $sth->fetchAll(PDO::FETCH_COLUMN, 0);

http://php.net/manual/en/mysqli-result.fetch-array.php

http://php.net/manual/en/pdostatement.fetchall.php

 

0 głosów
odpowiedź 24 kwietnia 2018 przez Bosswell Nałogowiec (36,470 p.)
edycja 24 kwietnia 2018 przez Bosswell

Nie kombinuj z modulo. Wystarczy podzielić.

$ilosc_kartonow = (int)(ceil($ilosc_prowadnic/12));

 

komentarz 25 kwietnia 2018 przez niezalogowany
tak i w tym przypadku, gdy liczba prowadnic to 24 - kartony trzy, a nie dwa, itd
komentarz 25 kwietnia 2018 przez Bosswell Nałogowiec (36,470 p.)

A sprawdzałeś ? Dla 24, wynik jest równy 2.

$ilosc_prowadnic = 24;

$ilosc_kartonow = (int)(ceil($ilosc_prowadnic/12));
echo $ilosc_kartonow;

 

Podobne pytania

0 głosów
5 odpowiedzi 5,638 wizyt
pytanie zadane 26 października 2017 w C i C++ przez mn130496 Gaduła (3,570 p.)
0 głosów
1 odpowiedź 1,002 wizyt
pytanie zadane 26 marca 2019 w Java przez Paweł123 Nałogowiec (33,540 p.)
0 głosów
2 odpowiedzi 1,366 wizyt
pytanie zadane 10 sierpnia 2018 w C# przez MS Początkujący (430 p.)

93,631 zapytań

142,552 odpowiedzi

323,056 komentarzy

63,137 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 2416p. - dia-Chann
  2. 2390p. - DziarnowskiJ
  3. 2317p. - raydeal
  4. 2300p. - Adrian Wieprzkowicz
  5. 2243p. - rucin93
  6. 2242p. - Łukasz Piwowar
  7. 2222p. - CC PL
  8. 2117p. - Łukasz Eckert
  9. 2082p. - Michal Drewniak
  10. 1957p. - Maurycy W
  11. 1885p. - robwarsz
  12. 1811p. - rafalszastok
  13. 1600p. - Rafał Trójniak
  14. 1588p. - Tomasz Bielak
  15. 1377p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...