NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
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 – Řešené úlohy k 1.-5. lekci PHP

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Odpovídá na mayo505
Neaktivní uživatel:16.4.2016 14:48

Stále tomu moc nerozumím.

<?php
$cinske_znameni_roku = array('opice', 'kohout', 'pes', 'vepř', 'krysa', 'buvol', 'tygr', 'zajíc', 'drak', 'had', 'kůň', 'koza');
$rok = date('Y');
$pocet_znameni = 12;
$aktualni_cinske_znameni = $cinske_znameni_roku[$rok % $pocet_znameni];
echo("Dnešní rok je ve znamení $aktualni_cinske_znameni.");
?>

date('Y') se řídí podle čeho?
A co znamená to procento?

Editováno 16.4.2016 14:49
Odpovědět
16.4.2016 14:48
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
mayo505:16.4.2016 15:08

Prepáč, že ti odpoviem takto, ale ako vraví staré čínske príslove: Dáš človeku rybu nakŕmiš ho na deň, naučíš ho loviť ryby a dáš mu potravu na celý život, naučíš ho používať google a nemusíš ho učiť loviť ryby :D

http://lmgtfy.com/?…
http://lmgtfy.com/?…

Proste nedá sa učiť tak, že niečo neviem a idem sa hneď niekoho pýtať. Hneď tvoja prvá otázka plynula z toho, že si nevedel čo robí ten kód. Ak by si si vyhľadal čo ako funguje, ako napríklad funguje funkcia date, tak by ti bolo jasné prečo to máš chybne.

 
Odpovědět
16.4.2016 15:08
Avatar
Odpovídá na mayo505
Neaktivní uživatel:16.4.2016 15:23

Jasně chápu.

Takže pokud je x % y:

  • x < y, výsledek bude vždy x.
  • x > y a dělí se na celé číslo, výsledek bude vždy nula.
  • x > y a dělí se na desetinné číslo, výsledek bude vždy poslední zbytek.

Říkám to dobře?

Odpovědět
16.4.2016 15:23
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
mayo505:16.4.2016 15:27

áno, ale zapísal si to dosť zložite. Je to proste zvyšok po celočíselnom delení, to sa učí hádam už na základnej škole.

 
Odpovědět
16.4.2016 15:27
Avatar
Odpovídá na mayo505
Neaktivní uživatel:16.4.2016 17:08

Hádáš dobře, samozřejmě.

Pokud bych tedy chtěl zjistit znamení roku 2017.
Tak je to 2017 % 12 se zbytkem 40 a perioda.
Pokud dobře počítám, vychází mi krysa, jak to?

OPICE 0 12 24 36
KOHOUT 1 13 25 37
PES 2 14 26 38
VEPŘ 3 15 27 39
KRYSA 4 16 28 40
BUVOL 5 17 29
TYGR 6 18 30
ZAJÍC 7 19 31
DRAK 8 20 32
HAD 9 21 33
KŮŇ 10 22 34
KOZA 11 23 35

Krysa bude až v roce 2020.

První jsem počítal opici jako jedna, jenže pokud počítám jako zbytek, tak musím začít s nulou.
Kdybych počítal s jedničkou, vyjde mi vepř.

Odpovědět
16.4.2016 17:08
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
mayo505:16.4.2016 17:28

Tak je to 2017 % 12 se zbytkem 40 a perioda.

Toto mi nedáva žiaden zmysel. Ak robíš X % Y, tak výsledok nemôže byť väčší než Y - 1. Takže zvyšky po delení 12 môžu byť len 0-11.
Konkrétne 2017 % 12 = 1 ... pretože 2017 = 12 * 168 + 1

 
Odpovědět
16.4.2016 17:28
Avatar
Odpovídá na mayo505
Neaktivní uživatel:16.4.2016 17:30

Ach, takhle, dělal jsem zbytek jinak.

Děkuji mnohokrát za vysvětlení.

Editováno 16.4.2016 17:31
Odpovědět
16.4.2016 17:30
Neaktivní uživatelský účet
Avatar
Jenda Xenofob Kropáč:19.4.2016 20:44

Hezký den, přikládám řešení třetí úlohy.

připadá mi natolik jednoduché, že někde musí být chyba... :D , přestože funguje... :D

Budete-li mít chuť a čas se nad tím kdokoliv pozastavit, uvítám každý poznatek.. Díky :) (Zdroják je v přioženém obrázku)

 
Odpovědět
19.4.2016 20:44
Avatar
David Hynek
Tvůrce
Avatar
Odpovídá na Jenda Xenofob Kropáč
David Hynek:19.4.2016 23:34

Program by měl fungovat bez pravidelného zásahu programátora. Každý rok tedy podle tvého řešení, musíš upravit rok0 a jednou za 12 let pak i rok1? To jsi mohl rovnou napsat

echo "Dnešní rok je ve znamení koně;

a každý rok to znamení přepsat, bylo by to ještě jednodušší :)

Odpovědět
19.4.2016 23:34
Čím víc vím, tím víc věcí nevím.
Avatar
Martin Bušek:5.2.2017 11:52

Zajímá mě proč tvůj výsledek u cvičení produkty.php je 1484?
Pokud to napíši po svém

$cena =  array ('1' => 3500,
                '2' => 2800,
                '3' => 1280,
                '4' => 1920,
                '5' => 4300,
                 ) ;
$prumer = array_sum($cena) / count($cena);
$rozdil = $prumer - $cena[3];

echo('Třetí produkt se od průměrné ceny odlišuje o ' . $rozdil . ' Kč.');
?>

Vyjde mi výsledek 1480, což si myslím že je dobře. Stejný výsledek mi vrátila i kalkulačka když jsem to počítal zpětně.

Jelikož se moje a tvoje řešení diametrálně neliší, zajímá mě proč ti ve výsledku vychází o 4 více než mě.

Editováno 5.2.2017 11:54
 
Odpovědět
5.2.2017 11:52
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 10 zpráv z 114.