Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Složitější kalkulačka

Aktivity
Avatar
Zbysa.Cernohous:26.6.2015 18:55

dobrý den, v php programuju krátce a při programován složitější kalkulačky mám problém. Je v ní řádek, do kterého se napíše příklad, třeba 389(v řádku můžou být pouze stejná znaménka). Hodnoty jsem dostal do pole, ale nevím, jak udělat jejich násobení a dělení. Problém je v tom, že se přesně neví, kolik hodnot bude v poli. Pak tam ještě mám funkci pro odečtení, která asi není teoreticky správně, ale funguje. Poradil by někdo nějaké vylepšení? :)

$vysledek =$rozdeleni_p[0] - array_sum($rozdeleni_p) + $rozdeleni_p[0];
 
Odpovědět
26.6.2015 18:55
Avatar
Odpovídá na Zbysa.Cernohous
Neaktivní uživatel:26.6.2015 19:29
// Z pole, kde jsou čísla odebereme číslo první pomocí array_shift
    $mezivysledek = array_shift($cisla);

// Nyní pole $cisla obsahuje všechny hodnoty jako předtím, kromě té první

// Pole projdeme cyklem foreach, který z pole posupně čte hodnoty, které se ukládají do proměnné $cislo
foreach ($cisla as $cislo) {
    // Náš mezivýsledek vynásobíme s číslem z pole (místo násobení můžeme např. sčítat, odčítat, dělit..
    // Tato operace se podtupně provádí se všemi čísly z pole (krom té první, kterou jsme odebrali a ihned vložili do mezivýsledku)
    $mezivysledek = $mezivysledek * $cislo;
}

echo "Výsledek je " . $mezivysledek;
Editováno 26.6.2015 19:30
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
26.6.2015 19:29
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Zbysa.Cernohous:26.6.2015 22:45

Dík za pomoc, funguje to. :D

 
Nahoru Odpovědět
26.6.2015 22:45
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.