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: Machr na PHP - Generátor náhodných vět

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
David Hartinger
Vlastník
Avatar
David Hartinger:14.4.2013 8:54

Vítejte u první minisoutěže pro jazyk PHP, hraje se o placku "Machr na PHP" (kterou zatím nikdo nemá :P) a samolepky. Placka v názvu PHP velmi důmyslně ukrývá slona.

Jelikož PHP je dynamicky typovaný jazyk a má spoustu funkcí pro jednoduchou manipulaci s poli, bude dnešní soutěž právě o polích. Naprogramujte co nejlepší generátor náhodných vět. Skript po spuštění vypíše náhodnou větu, případně náhodné věty. Čím bude generátor inteligentnější, tím více bodů dostane.

Náhodné věty mohou vypadat např. takto:
Modrý jednorožec pomalu spal pod stolem.
(asi nejjednodušší varianta, skládáme větu vždy jako přívlastek, podmět, příslovečné určení způsobu, sloveso, příslovečné určení místa. jednotlivé členy náhodně vybereme z připravených polí se slovy).
S trochou důvtipu a rozšíření by generátor mohl vytvořit třeba:
Pamatuješ si na pomalého lenochoda? Včera jsem ho potkal u rybníka a ani mě nepoznal.

Reálné použití takového generátoru může být pro tvorbu náhodných textů k vyplnění šablon při návrhu webových stránek.

Můžete implementovat několik strategií tvorby vět a ty náhodně přepínat, docílíte dojmu, že věty připravuje člověk. Jsem zvědavý s čím přijdete :P

Deadline jako vždy sobota (20.4.) v 19:00.

Odpovědět
14.4.2013 8:54
New kid back on the block with a R.I.P
Avatar
David Hynek
Tvůrce
Avatar
David Hynek:14.4.2013 9:01

Dám Vám sem můj generátor, ale až v sobotu ráno. Dobrý úkol :)

Nahoru Odpovědět
14.4.2013 9:01
Čím víc vím, tím víc věcí nevím.
Avatar
Odpovídá na David Hartinger
Neaktivní uživatel:14.4.2013 11:14

Juchů, konečně mám co hlídat :D
(je to v sekci PHP :P)

Nahoru Odpovědět
14.4.2013 11:14
Neaktivní uživatelský účet
Avatar
Jakub Mudra
Tvůrce
Avatar
Odpovídá na David Hartinger
Jakub Mudra:14.4.2013 11:26

Knečně něco co umim :D

Nahoru Odpovědět
14.4.2013 11:26
Uvnitř jsou všichni stejní...
Avatar
Pavel Vosyka
Člen
Avatar
Pavel Vosyka:14.4.2013 13:22

Začínám si uvědomovat, jak krásná ta naše čeština vlastně je... :D Třeba jen všechny tvary pro sloveso "bavit se": Bavím, bavíš, baví, bavíme, bavíte, bavil, bavila, bavilo, bavili, bavily, bavit, bav, bavte, bavme ... a to se ještě mnohokrát opakují.. No asi to nebudu dělat tak dokonale :D .. A v angličtině to asi nepůjde, což? :D 8|

Nahoru Odpovědět
14.4.2013 13:22
"nikdy nepiš nic 2x" (updated 10 years after: "Není nic špatného na tom napsat něco 2x")
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Pavel Vosyka
David Hartinger:14.4.2013 13:32

V angličtině by to bylo moc jednoduché a pro mnoho zdejších lidí nezajímavé :P

Nahoru Odpovědět
14.4.2013 13:32
New kid back on the block with a R.I.P
Avatar
Michal Žůrek - misaz:14.4.2013 13:35

To já PHP neumím, takže to pro mě zrovna 3x zajímavé není, ale přesto se to zkusím rychle naučit a něco rychle splácat.

 
Nahoru Odpovědět
14.4.2013 13:35
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Michal Žůrek - misaz
David Hartinger:14.4.2013 13:42

Tím to pro tebe je právě zajímavé :P Umět PHP je velkou výhodou.

Nahoru Odpovědět
14.4.2013 13:42
New kid back on the block with a R.I.P
Avatar
Neaktivní uživatel:14.4.2013 16:35

Diskuze o programovacích jazycích přesunuta do Volné diskuze
http://www.itnetwork.cz/…16abe5031471

(David Hartinger tohle mě baví :D )

Nahoru Odpovědět
14.4.2013 16:35
Neaktivní uživatelský účet
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Hartinger:14.4.2013 16:43

Proč do volné? Je to diskuze o PHPčku, spíše by patřila do nového vlákna v PHPčku, sice se netýká soutěže, ale PHPčka určitě ano :) Volná diskuze je o tom, že jsem se dneska dobře vyspal :D

Nahoru Odpovědět
14.4.2013 16:43
New kid back on the block with a R.I.P
Avatar
Odpovídá na David Hartinger
Neaktivní uživatel:14.4.2013 17:50

no jo, jsem si chtěl vyzkoušet tlačítka no :D

Nahoru Odpovědět
14.4.2013 17:50
Neaktivní uživatelský účet
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na David Hartinger
Petr Nymsa:14.4.2013 17:51

To bych právě nedal. Udělat na Volné diskuzi vlákno Programovací jazyky. Tam ať se o tom bavíme :). Tyhle dohady o jazyku jsou vždy pod tématem pod který to nepatří :) nebo spíše odklání od původního záměru

Nahoru Odpovědět
14.4.2013 17:51
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Petr Nymsa
David Hartinger:14.4.2013 17:54

Dohady o jazyku by měly být v tématu pro daný jazyk :)

Nahoru Odpovědět
14.4.2013 17:54
New kid back on the block with a R.I.P
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na David Hartinger
Petr Nymsa:14.4.2013 17:58

Dobře, tak pro každý jazyk založíme vlákno Dohad o jazyku a tam se budem dohadovat :). Mě jde o to ,že většinou se pak odkloníme od problému. Pod článkem, kde čtenář očekává některé doplňující info, uvidí dohadování čí rekurze je rychlejší .. což absolutně nesouvisí s článkem. Proto se snažit odklonit tyhle diszuze do jednoho nebo pár předem určených vláken. A pak je na nás moderátorech tohle uhlídat. Bohužel pod článkama mají práva pouze admini (admin ? :D ) Tam se můžeme dohadovat na věky věků. na jiných diskuzních fórech toto mají. Například na Zing.cz mají vlákno náhodné myšlenky týdne. Lidi tam kecají o všem možným, proč ted neudělat vlákno Programovací jazyky a tam porovnávat, dedukovat, prožívat hlubokou fylozofii :)

Nahoru Odpovědět
14.4.2013 17:58
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Lukáš Hruda
Tvůrce
Avatar
Odpovídá na Petr Nymsa
Lukáš Hruda:14.4.2013 18:05

Jednoduše řečeno chceš vytvořit vlákno pro flamy, kde se budou moci programátoři dohadovat o tom který jazyk je nejlepší :D

 
Nahoru Odpovědět
14.4.2013 18:05
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Lukáš Hruda
Petr Nymsa:14.4.2013 18:07

Svým způsobem jo, ale ať to je na jednom místě a ne pod článkem o Tvorbě komponenty ..

Nahoru Odpovědět
14.4.2013 18:07
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
David
Tvůrce
Avatar
Odpovídá na Lukáš Hruda
David:14.4.2013 18:11

to je přesně pro Зайчик :D

Nahoru Odpovědět
14.4.2013 18:11
Nic néni nemožné!
Avatar
Ben Žour
Tvůrce
Avatar
Odpovídá na Lukáš Hruda
Ben Žour:14.4.2013 18:13

Ono je to lepší než když se pod každým příspěvkem který obsahuje "C#" a "Java" rozpohybuje často nekonečná diskuze, a klidně třeba ve fóru o grafice. Takhle by to aspoň bylo uspořádané v jednom vlákně...

 
Nahoru Odpovědět
14.4.2013 18:13
Avatar
Michal Žůrek - misaz:14.4.2013 18:15

Mimochodem už se tu zase rozjela diskuze která s plackama nemá nic společného.

To znamená že krom diskuze na téma dohady o jazyky budete muset ještě založit vlákno dohady o dohadech.

 
Nahoru Odpovědět
14.4.2013 18:15
Avatar
Зайчик
Člen
Avatar
Odpovídá na David
Зайчик:14.4.2013 18:17

Já se nedohaduju, kterej jazyk je lepší. Já vím co to je :D a co si myslí ostatní je mi vcelku jedno. Ale můžete udělat vlákno přímo pro mě a já si tam budu chodit stěžovat. :P

Nahoru Odpovědět
14.4.2013 18:17
Коммунизм для нашего будущего!
Avatar
David
Tvůrce
Avatar
Odpovídá na Зайчик
David:14.4.2013 18:21

jn ;) ale ty moc projevuješ to co je podle tebe nejlepší

Nahoru Odpovědět
14.4.2013 18:21
Nic néni nemožné!
Avatar
Petr Nymsa
Tvůrce
Avatar
Petr Nymsa:14.4.2013 18:23

opravdu bychom měli takové vlákno založit a snažit se diskuze přesouvat tam :)

Nahoru Odpovědět
14.4.2013 18:23
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Neaktivní uživatel:15.4.2013 18:07

na to se těším, to bude sranda :D

Nahoru Odpovědět
15.4.2013 18:07
Neaktivní uživatelský účet
Avatar
Odpovídá na Petr Nymsa
Neaktivní uživatel:15.4.2013 21:01

Ale kluci, co kdybyste místo toho dohadování radši udělali něco do soutěže ;)
Ještě tu není ani jeden výtvor....

Nahoru Odpovědět
15.4.2013 21:01
Neaktivní uživatelský účet
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Petr Nymsa:15.4.2013 21:14

Většinou soutěžící posílají až poslední den , kvůli obavě z kopírování ;)

Nahoru Odpovědět
15.4.2013 21:14
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Petr Nymsa
David Hartinger:15.4.2013 21:15

PHP jim velmi těžko někdo zkopíruje :D A zdrojáky může poslat až nakonec.

Nahoru Odpovědět
15.4.2013 21:15
New kid back on the block with a R.I.P
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na David Hartinger
Petr Nymsa:15.4.2013 21:16

No já to myslel se zdrojákem když to pošlou :). TO je povinný ne ? Jinak vím, že PHP asi těžko zkopírujou z webu :D To bychom měli náramně zabezpečený weby, kdyby to šlo alá totální hloupost :D

Nahoru Odpovědět
15.4.2013 21:16
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Kit
Tvůrce
Avatar
Kit:20.4.2013 9:27

Posílám sem svůj generátor. Nemám obavu, že by mi ho někdo zkopíroval :)

Je to jen taková hračka, kterou jsem slepil za pár minut.

http://www.itnetwork.cz/dev-lighter/89

Editováno 20.4.2013 9:28
Nahoru Odpovědět
20.4.2013 9:27
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Neaktivní uživatel:20.4.2013 9:58

a je po mně :D
s tou svou hračkou nemám šanci :D

Nahoru Odpovědět
20.4.2013 9:58
Neaktivní uživatelský účet
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Hartinger:20.4.2013 10:05

Kit byl tentokrát milosrdný a udělal jen jednoduchý skript, takže šanci máš :P

Nahoru Odpovědět
20.4.2013 10:05
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Kit:20.4.2013 10:12

Některé blbinky, jako např. velké písmeno na začátku věty, se mi nechtělo řešit. Chtěl jsem napsat jen princip a chtěl jsem se přitom vyhnout použití switch. V Javě ho už skoro nepoužívám...

Nahoru Odpovědět
20.4.2013 10:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na Kit
TomBen:20.4.2013 10:27

Skvěle inspirativní kousek. Já z PHP neumím ani tečku a stejně jsem si
tvůj skript přečetl líp, než některé moje vlastní dílka. Škoda, že soutěž
je jen v PHP. Docela jsi mě nadchl pro generátory vět. Jen to člověk vidí,
hned přemýšlí nad možnostmi rozšíření.

Nahoru Odpovědět
20.4.2013 10:27
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na TomBen
Kit:20.4.2013 10:33

Chtěl jsem to udělat tak, aby se to dalo libovolně rozšiřovat pouhým přidáváním dat. Kdyby se ta báze slov a struktur vět uložila třeba do XML, tak by to mohlo být docela dobře použitelné.

Nahoru Odpovědět
20.4.2013 10:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na TomBen
David Hartinger:20.4.2013 10:38

Jen interní poznámka, nápad jsem dostal, když jsem viděl právě takový generátor v GameMakeru :`

Nahoru Odpovědět
20.4.2013 10:38
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.4.2013 10:48

Přiznám se, že na začátku jsem to měl jen jako jednu funkci, ale pak jsem si řekl, že objektově to bude vypadat mnohem lépe. A při té příležitosti jsem přidal i různé struktury vět. Nejvíc mi asi dal zabrat ten otazník. Pořád jsem nevěděl, jak ho do datové struktury zapasovat co možná nejpřirozeněji. V XML bych to dal jako atribut pro typ věty, ale další zanoření pole by už bylo moc.

Trochu jsem válčil s kompozicí objektů, která jde v Javě udělat velmi lehce. PHP se trochu vzpouzelo, tak jsem to musel udělat jako lokální pole uvnitř metody a teprve výsledek strčit do objektu.

Nahoru Odpovědět
20.4.2013 10:48
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na David Hartinger
TomBen:20.4.2013 10:51

Tak to ho v GM dělat nebudu, to by se nám mohla zacyklit realita. :D

Nahoru Odpovědět
20.4.2013 10:51
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Odpovídá na Kit
Neaktivní uživatel:20.4.2013 12:20

No já zas velký písmenko mám, ale někdy tam vznikaj divný věty :D

Nahoru Odpovědět
20.4.2013 12:20
Neaktivní uživatelský účet
Avatar
Odpovídá na David Hartinger
Neaktivní uživatel:20.4.2013 12:21

Já se spíš bojím s čím příjde David Hynek... Celej týden napíná, nikdo neví co má :D

Nahoru Odpovědět
20.4.2013 12:21
Neaktivní uživatelský účet
Avatar
David Hynek
Tvůrce
Avatar
David Hynek:20.4.2013 17:04

DanVitek... přidej na začátek kódování stránky... A mě se neboj... já to stejně nestihl :o)

Ale pak to sem určitě dám :o)

Nahoru Odpovědět
20.4.2013 17:04
Čím víc vím, tím víc věcí nevím.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Neaktivní uživatel
David Hartinger:20.4.2013 17:30

Vypadá to, že Dan to dneska vyhraje :D

Nahoru Odpovědět
20.4.2013 17:30
New kid back on the block with a R.I.P
Avatar
Odpovídá na David Hynek
Neaktivní uživatel:20.4.2013 18:06

:O :D
kam kódování ?

Nahoru Odpovědět
20.4.2013 18:06
Neaktivní uživatelský účet
Avatar
Odpovídá na David Hartinger
Neaktivní uživatel:20.4.2013 18:06

no jenom aby někdo nepřišel :D
pro jistotu uzavřu diskuzi do 19,01 :P :D

Nahoru Odpovědět
20.4.2013 18:06
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:20.4.2013 18:21

...pro ty co to nepochopili - jen vtip :)

Nahoru Odpovědět
20.4.2013 18:21
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:20.4.2013 19:01

Už je 19:00 !!! :D

EDIT: 19:01

Editováno 20.4.2013 19:01
Nahoru Odpovědět
20.4.2013 19:01
Neaktivní uživatelský účet
Avatar
David Hartinger
Vlastník
Avatar
David Hartinger:20.4.2013 19:11

Kit - Krásný objektový kód.
Dan - Opravdu jsem se nasmál těm kombinacím, co to vytváří :D

Kit to má hezčí po stránce kódu, Dan si vyhrál zas s designem a slovní zásobou (btw běží to tady, asi to sem ani nenalinkoval: http://projekt2_dan-vitek.bobikpage.cz/…nerator-vet/)

Oba projekty jsou malé, ale přesně tohle na tyto minisoutěže bohatě stačí.

Placku máte oba, adresy máme a posíláme :P EDIT: Tak prej na Kita nemáme :D

Editováno 20.4.2013 19:12
Nahoru Odpovědět
20.4.2013 19:11
New kid back on the block with a R.I.P
Avatar
Odpovídá na David Hartinger
Neaktivní uživatel:20.4.2013 19:12

Juchůůůů díkýýýý !!!!! :)

Nahoru Odpovědět
20.4.2013 19:12
Neaktivní uživatelský účet
Avatar
Petr Nymsa
Tvůrce
Avatar
Petr Nymsa:20.4.2013 19:13

"barevný chytrý muž mlátil kladivem do počítače" - nějaký programátor ? :D Dane dobrá práce :). Už se snad někdy také zúčastním i s výsledkem :)

Nahoru Odpovědět
20.4.2013 19:13
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Odpovídá na Petr Nymsa
Neaktivní uživatel:20.4.2013 19:16

Díky Petr Nymsa :)

Kdyžtak kdyby někdo měl zájem o zdrojáky... http://projekt2_dan-vitek.bobikpage.cz/…ce0iG3h4.zip
Pak je přidám i jako článek.

Nahoru Odpovědět
20.4.2013 19:16
Neaktivní uživatelský účet
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Petr Nymsa
David Hartinger:20.4.2013 19:33

No tebe jsem čekal na fontánách a nic ;( :D

Nahoru Odpovědět
20.4.2013 19:33
New kid back on the block with a R.I.P
Avatar
adam440
Tvůrce
Avatar
adam440:20.4.2013 19:37

"růžový líný slon mlátil krokodýla" - ten generátor je zhulenej? :D

 
Nahoru Odpovědět
20.4.2013 19:37
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 50 zpráv z 60.