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í.

Soutěž: Machr na C# .NET - Vícejazyčná aplikace

Soutěž již skončila

Zadání

Vašim úkolem bude naprogramovat převodník jednotek, který bude nabízet více jazyků rozhraní aplikace. Aplikace při startu sama vybere nejvhodnější jazyk (například protože jsem v česku, tak češtinu), který použije a umožní uživateli jazyk v průběhu běhu aplikace měnit. Nemusíte podporovat milion jazyků, stačí dva. Povinná je čeština/slovenština a angličtina, další jsou bonusové (pro ty, kteří je ovládají). Představa je taková, že aplikace bude mít na začátku políčka s popisky Convert from a Convert to a když kliknu na češtinu tak se popisek políček změní na Převést z a Převést do.

Samotný převodník jednotek bude umět převádět jednotky míry (mm, cm, m, km), váhy (g, dkg, kg, t) a jednotky datové kapacity (B, KB, MB, GB, TB).

V tomto machrovi můžete použít pouze C# a nesmíte využít žádné externí knihovny. Vzhledem k přepínání jazyka se předpokládá využití GUI.

Výhra

Vítěz dostane placku Machr, pár samolepek a ocenění do portfolia.

Výhra

Výsledky

Jméno bodů Řešení ( Stáhnout vše )
Ondřej Štorc 68 Stáhnout řešení
Štefan Pružinský 65 Stáhnout řešení
Neaktivní uživatel 60 Stáhnout řešení
michaall.k 58 Stáhnout řešení
Ridge 57 Stáhnout řešení
Daziko 56 Stáhnout řešení
Jan Sála 52 Stáhnout řešení
František Boháček 46 Stáhnout řešení
Dávid Zita 46 Stáhnout řešení
Martin Bruna 45 Stáhnout řešení
Matyáš Černohous 35 Stáhnout řešení
Neaktivní uživatel 0 Stáhnout řešení

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Michal Žůrek - misaz:30.6.2015 20:59

V této soutěži si naprogramuje vícejazyčný převodník jednotek, který bude umožňovat za běhu měnit jazyk, jakým s uživatelem "komunikuje".

Soutěž končí 7.7.2015 14:00:00, tak se nezapomeň zapojit! :-)

 
Odpovědět
30.6.2015 20:59
Avatar
Štefan Pružinský:30.6.2015 21:04

Vidím, že si produktívny. :) Povzbudila ťa účasť na predchádzajúcich dvoch Machroch? :D Žeby som sa zapojil aj teraz...? :`

Nahoru Odpovědět
30.6.2015 21:04
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá na Štefan Pružinský
Michal Žůrek - misaz:30.6.2015 21:06

Začali prázdniny, dva měsíce volna. :)

 
Nahoru Odpovědět
30.6.2015 21:06
Avatar
Patrik Smělý
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Patrik Smělý:30.6.2015 21:10

A co něco pro slony ? :)

 
Nahoru Odpovědět
30.6.2015 21:10
Avatar
Odpovídá na Patrik Smělý
Michal Žůrek - misaz:30.6.2015 21:14

sloni byli nedávno.

 
Nahoru Odpovědět
30.6.2015 21:14
Avatar
Patrik Smělý
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Patrik Smělý:30.6.2015 21:15

Vím, ale sloni nikdy nikomu nevadí :D.

 
Nahoru Odpovědět
30.6.2015 21:15
Avatar
Odpovídá na Patrik Smělý
Štefan Pružinský:30.6.2015 21:28

Od Michala slony nechci, on nás kŕmi algoritmami... :D

Nahoru Odpovědět
30.6.2015 21:28
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá na Štefan Pružinský
Neaktivní uživatel:30.6.2015 21:36

Ještě že ne algoritmy ... :D

Nahoru Odpovědět
30.6.2015 21:36
Neaktivní uživatelský účet
Avatar
Martin Dráb
Tvůrce
Avatar
Martin Dráb:1.7.2015 11:17

Ah, to vypadá, že bych se mohl tentokrát i zapojit.

Nahoru Odpovědět
1.7.2015 11:17
2 + 2 = 5 for extremely large values of 2
Avatar
Odpovídá na Michal Žůrek - misaz
Matyáš Černohous:1.7.2015 20:36

Při převádění datových jednotek mám počítat s kapacitou v dekadické soustavě ? (1000 místo 1024) :)

Editováno 1.7.2015 20:37
 
Nahoru Odpovědět
1.7.2015 20:36
Avatar
Patrik Valkovič:1.7.2015 20:52

nechci rejpat, ale moc nevidím smysl zadání. Převod jednotek by snad měl zvládnout každý a více jazyků má WPF zabudovaný přímo v sobě. Nevídím žádnou kreativitu ani chalange. Můj názor :)

Nahoru Odpovědět
1.7.2015 20:52
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Odpovídá na Matyáš Černohous
Michal Žůrek - misaz:1.7.2015 21:23

záleží na tobě, ono je to zažité tak nějak různě, ale správně by to mělo být, tak jak Filip Šohajek uvedl odkazy.

 
Nahoru Odpovědět
1.7.2015 21:23
Avatar
Odpovídá na Patrik Valkovič
Michal Žůrek - misaz:1.7.2015 21:24

když už tedy víš, že to WPF umí, tak si to máš zkusit napsat sám, asi chápeš, že za nativní řešení ve WPF nebude moc bodů.

Původně jsem to kvůli tomu chtěl omezit na Windows Forms, ale to by zas nikdo neřešil, tak jsem od toho upustil a doufal, že si na to řešení ve WPF nikdo nevzpomene. :D

Editováno 1.7.2015 21:25
 
Nahoru Odpovědět
1.7.2015 21:24
Avatar
Ondřej Štorc
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Ondřej Štorc:1.7.2015 21:28

A já se zrovna kvůli tomuhle machrovi dokopal naučit WPF :D

Nahoru Odpovědět
1.7.2015 21:28
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
Odpovídá na Michal Žůrek - misaz
Patrik Valkovič:1.7.2015 21:56

Proč by za nativní řešení nemělo být moc bodů? Je to řešení, které přesně splňuje požadavky, tak proč ho nepoužít? Právě kvůli tomu to WPF implementuje. Co budeš dělat v praxi? Používat existující řešení nebo programovat vlastní?

Nahoru Odpovědět
1.7.2015 21:56
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Odpovídá na Patrik Valkovič
Michal Žůrek - misaz:1.7.2015 22:00

samozřejmě, že v praxi je výhodnější použít nativní řešení, ale machr je o tom abyste si něco nového vyzkoušeli. Ve WPF to taky někdo implementoval.

 
Nahoru Odpovědět
1.7.2015 22:00
Avatar
Petr Čech
Tvůrce
Avatar
Petr Čech:2.7.2015 15:12

Zajímalo by mě, jak se bude testovat adaptace jazyka na prostředí. Pochybuju, že má někdo několik virtualizovaných Widlí s několika jazyky, takže to vidím tak, že vyharabeme nejnovější Michalův screen, zjistíme, v jakém jazyku má Windows a to bude zkrátka defaultní jazyk ]:> Ve zdrojáku se to bude muset někam šikovně schovat...

Nahoru Odpovědět
2.7.2015 15:12
the cake is a lie
Avatar
Odpovídá na Petr Čech
Michal Žůrek - misaz:2.7.2015 15:15

dobrý nápad, ale mám dva počítače s Windows, každý v jiném jazyku. :)

 
Nahoru Odpovědět
2.7.2015 15:15
Avatar
Neaktivní uživatel:2.7.2015 16:14

Mohl by jsi prosimtě smazat řešení z tohoto účtu, evidentně mám dva a při updatu jsem nahrál řešení jako druhá osoba :D BTW: dají se nějak spojit účty? (jeden přes email a druhý přes FB)

Nahoru Odpovědět
2.7.2015 16:14
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Michal Žůrek - misaz:2.7.2015 16:16

nedají a ani nemám možnost ti odstranit to řešení. Budu hodnotit jen to co bylo nahráno z účtu Neaktivní uživatel. Kdybys moc chtěl případnou placku dostat do účtu Neaktivní uživatel, tak napiš PM.

Editováno 2.7.2015 16:17
 
Nahoru Odpovědět
2.7.2015 16:16
Avatar
Odpovídá na Michal Žůrek - misaz
Neaktivní uživatel:2.7.2015 16:19

Oukej :) BTW: jen k té diskuzi o něco výše, já žil v domění že WPF je novější, modernější než windows forms -> lepší. Mýlil jsem se?

Nahoru Odpovědět
2.7.2015 16:19
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Michal Žůrek - misaz:2.7.2015 16:29

ne nemýlil jsi se. WPF je lepší a modernější.

 
Nahoru Odpovědět
2.7.2015 16:29
Avatar
Odpovídá na Michal Žůrek - misaz
Matyáš Černohous:2.7.2015 17:09

Teď jsem zmatený jak bude probíhat hodnocení. Bude se hodnotit lépe to, jestli jsem si sám napsal lokalizaci a nepoužil integrovanou ve wPF ?

 
Nahoru Odpovědět
2.7.2015 17:09
Avatar
Odpovídá na Matyáš Černohous
Michal Žůrek - misaz:2.7.2015 17:13

lépe se bude hodnotit, když si lokalizaci napíšeš sám.

 
Nahoru Odpovědět
2.7.2015 17:13
Avatar
Martin Bruna
Člen
Avatar
Odpovídá na Michal Žůrek - misaz
Martin Bruna:5.7.2015 18:06

Aplikace si vybere jazyk a na počátku bude angličtina co je to za blbost?
Jaký jazyk má tedy být jako default systém/angličtina?

 
Nahoru Odpovědět
5.7.2015 18:06
Avatar
Odpovídá na Martin Bruna
Michal Žůrek - misaz:5.7.2015 20:20

aplikace si vybere vhodný jazyk, tak jak ona uzná za vhodné. Angličtina byl příklad. To jak budeš posuzovat nejvhodnější jazyk je na tobě.

 
Nahoru Odpovědět
5.7.2015 20:20
Avatar
joci
Člen
Avatar
joci:6.7.2015 21:39

Clovek na tom maka od stredy a na konci ho zastavi vec, pri ktorej neviem co dalej. :( Tak z tohto machra nebude nic. No, mozno nabuduce.

Nahoru Odpovědět
6.7.2015 21:39
Svet patrí tím, ktorí sa neposerú.
Avatar
Odpovídá na joci
Michal Žůrek - misaz:6.7.2015 21:41

16 hodin do konce, honem ještě google nebo se nenápadně zeptej na fóru. :)

 
Nahoru Odpovědět
6.7.2015 21:41
Avatar
joci
Člen
Avatar
Odpovídá na Michal Žůrek - misaz
joci:6.7.2015 21:50

Ten uz nie, ale uz sa tesim na dalsi. :D

Nahoru Odpovědět
6.7.2015 21:50
Svet patrí tím, ktorí sa neposerú.
Avatar
Ondřej Štorc
Tvůrce
Avatar
Odpovídá na joci
Ondřej Štorc:6.7.2015 21:54

Věř mi že se vše dá s trochou snahy vygooglit :)

Nahoru Odpovědět
6.7.2015 21:54
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
Martin Bruna
Člen
Avatar
Odpovídá na joci
Martin Bruna:6.7.2015 22:46

Nikdy to nevzdavej at je to jakejkoliv problem. Ikdyby reseni melo trvat cele den (klidne i dny), o to bude potom ta radost zes to vyresil vetsi :D

 
Nahoru Odpovědět
6.7.2015 22:46
Avatar
joci
Člen
Avatar
Odpovídá na Martin Bruna
joci:6.7.2015 22:53

Nie, ved ja to nechcem vzdat, len hovorim, ze toho machra sa nezucastnim, ale tu chybu budem hladat dalej.

Nahoru Odpovědět
6.7.2015 22:53
Svet patrí tím, ktorí sa neposerú.
Avatar
Odpovídá na Michal Žůrek - misaz
Štefan Pružinský:6.7.2015 23:03

Tak, pripájam sa aj ja. :)
Mal som na to dosť málo času, ale ja napriek tomu som stihol všetko čo som chcel. Aplikácia je plne objektová, má jednoduchú možnosť rozšírenia o ďalšie veličiny, ktoré sa automaticky zaradia do programu, podporuje lokalizáciu až do 51 jazykov požitím prekladacej API, je tam požitý LINQ to XML, atď...
Kvôli časovej tiesni som stihol okomentovať len triedy, ale myslím, že kód hovorí sám za seba. :D Pri niektorých viac urozprávaných jazykoch text prekrýva časť iných ovládacích prvkov... :(

Editováno 6.7.2015 23:05
Nahoru Odpovědět
6.7.2015 23:03
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá na Štefan Pružinský
Neaktivní uživatel:6.7.2015 23:16

A to jsem si řikal že se nebude účastnit moc a lidí a když už mám tu chvilku volnou že se zapojim :D teď když tak koukám na tvůj koment tak asi nic :D ale tak co, alespoň účast :D

Nahoru Odpovědět
6.7.2015 23:16
Neaktivní uživatelský účet
Avatar
Michal Žůrek - misaz:7.7.2015 14:47

Výtvory byly průměrné. Většina z Vás však vůbec nepřemýšlela nad něčím, co se označuje UX. Znamená to jak moc pohodlné je používaní aplikace. Až na jednoho jste první po spuštění aplikace na mě vybafli, převod milimetrů na milimetry. Myslíte si, že skutečně chci převádět milimetry na milimetry? A chci vůbec převádět něco tak malého jako jsou milimetry. Co třeba převod m > cm nebo něco podobného a pravděpodobnějšího. Druhá věc je že nemusím klikat na převést, ale že se to převede samo, však co jiného než převést bych mohl od převodníku jednotek chtít?

Když jsem vymýšlel zadání říkal jsem si jakou jednoduchou aplikaci sem dát. Napadl mě převodník jednotek. Něco tak primitivního jako je převodník jednotek prostě musíte zvládnout bezchybně. Ano nemusí to být dokonale objektové a bůh ví co všechno, ale prostě když jsem blbec a zadám že chci převést 1024 Mb na Mb, tak mi to prostě musí vypsat 1024. Asi dva z Vás vypsali něco jiného. Jistojistě jste si všimli že se tu řešilo 1000 vs 1024, většina z Vás zvolila 1000, protože to pak nemusí komplikovat, takže jste do slovníku delka zadali všechny míry, pak jste to překopírovali změnili delka za hmotnost, a pak do třetice zkopírovali a změnili hmotnost za data. A jsme opět u problému, co když všechny nebudou 1000 a bude to komplikovanější? Tak tam dáme podmínku! ... Špatně. Prostě v zásadě musíte mít objekt BlaBlaConvertor, který bude převádět podle toho co převádí, kapacitu prostě převede podle 1024 a palce na 2.54. Když budouc COnvertory moc podobné budou od sebe dědit.

Celkem bylo 100 bodů, bodování tentokrát bylo zajištěno tabulkou v Excelu, takže je neprůstřelné. 10 bodů bylo věnováno, že se mi aplikace na anglických Windows spustila v angličtině. 10 bodů také bylo věnováno tomu že jste zvládli převést

1215m = 1,215km
15g = 0,015kg
8b = 1B
ahoj kg nevyhodí neošetřenou vyjimku
1024 Mb = 1 Gb // popř 1,024 gb
1024 Mb = 1048576 Kb // popř 1024000 kb
1024 Mb = 1024 Mb

a 10 bodů bylo za to, že jeden převodník = 1 třída, která buď něco implementuje nebo dědí.

Když jste měli za toto 30 bodů v podstatě jste vyhráli. těch dalších 70 bodů se dalo nasbírat víceméně snadno, některé byli víceméně zadarmo a dostali je úplně všichni.

Příště to doufám bude bez prasáren. Pokud to projde přes Zdeňka, tak brzy bude OOP.

Přečtěte si i jednotlivé hodnocení níže. Nevypisoval jsem všechno všem, poněvadž bych to musel kopírovat, Přečtěte si i hodnocení ostatních a vyzkoušejte si zdali neduhem netrpí i vaše aplikace.

 
Nahoru Odpovědět
7.7.2015 14:47
Avatar
Michal Žůrek - misaz:7.7.2015 14:47

Díky všem za účast, zde jsou výsledky:

Neaktivní uživatel - 60 bodů
Tvé řešení je velmi dobré. Převodník zvládá převést i bity na byte. Nicméně jednou mi to vyhodilo výjimku ve formuláři na řádku 119, kde se nepovedlo něco načíst. Kódu chybí nějaké managery, jejich práci obstaráváš ve formuláři, což by se nemělo. Kód obsahuje duplicitní kód, proč má každý konvertor úplně stejnou metodu Convert, když ji přeci mohou zdědit? Metoda Convert navíc dělá více věcí, což by neměla. Např upravovat desetinnou čárku a tečku by měla dělat nějaká jiná metoda. Dobré je, že převodník si sám detekuje sadu jednotek, mezi kterými převádí. Uživatelské rozhraní sice není nic extra, ale zato se velmi dobře používá. Škoda že jsi neimplementoval automatické vybírání vhodného jazyka při startu aplikace. Na Anglických Windows se mi vybrala čeština.

Ondřej Štorc - 68 bodů
Neumí ti to převádět bity (malé b = bit, velké B = byte). 1B = 8b. Kód máš pěkně rozdělen do tříd, kdybys však místo rozhraní použil třídu, ze které by převodníky dědily, tak bys nemusel všem kopírovat stejnou metodu Convert, a základní číslo bys pak udal jenom u DataUnits, kde je jiné než normálně. Oceňuji, že aplikace mi na anglických Windows vybrala jako výchozí jazyk angličtinu.

Neaktivní uživatel - 0 bodů

Matyáš Černohous - 35 bodů
Už při spouštění ti to spadlo s neošetřenou výjimkou, protože aplikace hledá dočasnou složku, kterou si sama nevytvoří. Vytvořil jsem ti ji tedy ručně, ale reálná aplikace toto prostě musí umět. Navíc ti to nějak špatně převádí. Když si dám data, a chci převést 1024 Kb na (třeba Kb), tak mi to vypíše 1024 Kb je 102 Kb, hmm…, tady asi něco nehraje.

František Boháček - 46 bodů
Posílá se sice celý projekt, ale to už nevadí. Příště se neboj zeptat. Převádí ti to trošku divně, když zadám, že chci převést MB na MB, tak mi to vypíše že 1000Mb je 1Mb, hmmm, tady asi něco nesedí. Zkus se v OOP podívat na polymorfismus. Řádově se tvůj kód zjednoduší. Po jeho čtení jsem nabýval dojmu, že i když existuje jednoduché řešení, tak ty to zrovna musíš vše řešit co nejsložitější. To se ti taky vymstilo u převodu stejné na stejné. Uživatelské rozhraní vypadá trochu zastarale a nebylo by na chybu si alespoň trochu aplikaci odladit, aby se i lépe používala, třeba místo tlačítkem šlo převádět rovnou automaticky, když se změnil obsah textového políčka.

Ridge - 57 bodů
Možná by na úvod nebylo špatné pojmenovat projekt lépe než WindowsFormsAp­plication21. Schválně co dělá (aniž by ses na ni podíval) WindowsFormsAp­plication15? Čeština má háček nad C, když už děláš jazykovou aplikaci, bylo by dobré si i takovéto blbosti pohlídat. Přeci jen je trochu divné, když titulek aplikace diakritiku obsahuje a zbytek aplikace ne. Aplikaci bys měl přeložit celou, nesmíš zapomenout ani na titulek, který zůstává v češtině. Je skvělé, že jsi implementoval automatický výběr jazyka.

Jan Sála - 52 bodů
Nebylo by špatné udělat každý převodník vlastní třídou, protože sice jednotky datové kapacity se dají převádět po 1000, ale kdybychom do metrických chtěli dát jednotky imeriální (palce, stopy, atd.), program to moc nepobere. Program ti celkem dobře převádí, ale nezná bity (b bit a B byte je rozdíl, 1B = 8b).

Daziko - 56 bodů
15g není 0.15kg, ale 0.015kg. Aplikace má průměrné uživatelské rozhraní, stejně tak se ovládá celkem standardně. Nebylo by špatné třeba zvážit, že bych nemusel u používání aplikace tolik klikat. Dá se toho docílit třeba tak, že nebude žádné tlačítko konvertovat, ale zkonvertuje se to automaticky už při zadávání vstupního čísla. Nicméně je pěkně objektově napsaná.

Martin Bruna - 45 bodů
Podporuješ jak bity tak bajty, ale zapomněl jsi na základní jednotku bitů - bit. Rozeznává se mále b (bit) a velké B (byte) 1B = 8b. Doporučuji se podívat na polymorfismus, výrazně tím „odprasíš“ svůj kód. Není špatné taky popřemýšlet nad výběrem výchozí zobrazené jednotky. Skutečně chce uživatel nejběžněji převádět milimetry?

Dávid Zita - 46 bodů
Kód je otřesný, ale aplikace jinak funguje celkem dobře. Uživatelské rozhraní je povedené (sice mi moc nesedí barvy, ale to je subjektivní). Působí historickým dojmem (možná kvůli obrázkům vlejek), mohl jsi ji vyšperkovat o historické jednotky, jako jsou různé pinty, lokty, a podobné.

Štefan Pružinský - 65 bodů
Jako jediný jsi mi vybral správně základní jednotku, nikoli nějaké zaprdkané milimetry. Nemáš ošetřené výjimky (opět jako jediný) při převodu slova Ahoj na metry. Když jsi prohlásil, že máš 51 jazyků, tak jsem si řekl WOW a pak mi vypadl internet. :D Ale neber to tahle. Nápad to byl dobrý, já bych to řešil asi podobně, ale přeci jen si musíš nějak zajistit aspoň základní jazyk (třeba Angličtinu), který bude fungovat, když vzdálený překladač nebude dostupný.

michaall.k - 58 bodů
Aplikace je pěkná, funguje dobře, ale nebylo by špatné se naučit aspoň základy objektově orientovaného programování. To načítání jednotek je dost hnusné a celkem i nepraktické. Oceňuji, že tvoje aplikace si vybrala vhodný jazyk pro start.

Placku tedy získává Ondřej Štorc, Štefan Pružinský (stevkopr). Gratuluji :)

Akceptované řešení
+5 Zkušeností
Řešení problému
 
Nahoru Odpovědět
7.7.2015 14:47
Avatar
Jan Lupčík
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Jan Lupčík:7.7.2015 14:58

Gratuluji výhercům. :)

Štefan Pružinský: Konečně jsi se dočkal placky. :)

Editováno 7.7.2015 14:58
Nahoru Odpovědět
7.7.2015 14:58
TruckersMP vývojář
Avatar
Ridge
Člen
Avatar
Ridge:7.7.2015 15:22

Gratuluji vitezum a Michalovi dekuji za hezkeho machra :)

Nahoru Odpovědět
7.7.2015 15:22
use brain.
Avatar
Odpovídá na Michal Žůrek - misaz
Štefan Pružinský:7.7.2015 15:29

Tak ďakujem Bohu aj Michalovi, že to konečne vyšlo. :)
Michal Žůrek - misaz Na 2. mieste som asi kvôli tej neošetrenej výnimke ("ahoj"), nie? :( Pretože na ostatné prvky vyhrávam...
Ondřej Štorc Blahoželám k 1. miestu. :)
Jan Lupčík Ďakujem. :)
Máš ešte jednú organizačnú otázku: Komu mám poslať svoju poštovú adresu... Zdeněk Pavlátka ?
Ešte raz ďakujem. :D

Nahoru Odpovědět
7.7.2015 15:29
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá na Štefan Pružinský
Michal Žůrek - misaz:7.7.2015 15:38

za jakoukoliv neošetřenou výjimku je -5 bodů, tzn, že tobě to neošetřenou výjimku hodilo jednak u ahoj, jednak, když jsem byl odpojený od internetu. = -10 bodů, ale napsal jsem ti -2, protože 51 jazykům se nedá odolat. Jinak jsi ztratil body v celkem 8 (z 25) kolonkách. :P

 
Nahoru Odpovědět
7.7.2015 15:38
Avatar
Odpovídá na Michal Žůrek - misaz
Štefan Pružinský:7.7.2015 17:01

A ako je to z posielaním placiek? Komu mám poslať tú adresu?

Nahoru Odpovědět
7.7.2015 17:01
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá na Štefan Pružinský
Michal Žůrek - misaz:7.7.2015 17:03

Řešení publikujte klasickou cestou jako program a adresu pošlete Zdeněk Pavlátka do PM.

Je možné, že je na dovolené, takže na placku asi budete muset pár dní počkat.

 
Nahoru Odpovědět
7.7.2015 17:03
Avatar
Odpovídá na Michal Žůrek - misaz
František Boháček:7.7.2015 17:09

Gratuluji vítězům

Bohužel mě až dnes napadlo, jak bych ten kód mohl zjednodušit a bylo to právě dědičností, která s polymorfismem souvisí, tedy, pokud jsem polymorfismus pochopil správně. Bohužel jsem se dnes ještě nedostal na počítač a nemohl jsem kód doladit, snad to bude příště lepší, díky za soutěž a hlavně za to hodnocení, že mne většinou napadajǐ nejtěžší cesty, to je pravda, ale tady mě až do dneška nenapadlo, jak to zjednodušit

 
Nahoru Odpovědět
7.7.2015 17:09
Avatar
Odpovídá na František Boháček
Michal Žůrek - misaz:7.7.2015 18:04

podívej se na řešení od Neaktivní uživatel, tam to je vyřešené. Každý převodník má svojí třídu, která z něčeho dědí a když se něco převádí komplikovaněji, tak se to změní jen tam v té jedné třídě. Do logiky samotného programu už nebudeš muset sahat.

 
Nahoru Odpovědět
7.7.2015 18:04
Avatar
Odpovídá na Michal Žůrek - misaz
Neaktivní uživatel:7.7.2015 18:27

Za prve bych rad podekoval za machra na C# a ocenil bych jich vice behem prazdnin :) jinak k te vyjimce, nevim kde se tam objevila, co jsem zkousel tak mi nic nevyskocila ovsem ne vse bylo v try catch bloku takze to je mozne. K tomu dedeni/duplicitnimu kodu, kdyz jsem to presunul do rodicovskeho convertoru tak to tam hazelo nejakou chybu kterou jsem uz bohuzel nemel cas resit. Jinak me ted napadlo ze ty prevadece mohli byt zapsany v nejakym JSON souboru, coz by resilo duplicitni kod a zaroven by to bylo lepe rozsiritelne. Kazdopadne diky za treti misto i kdyz za to nic neni :D a gratulave vytezum :)
PS: ty body jsou jen k hodnoceni nebo i pro odemykani clanku?

Editováno 7.7.2015 18:28
Nahoru Odpovědět
7.7.2015 18:27
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Michal Žůrek - misaz:7.7.2015 18:29

body jsou zde jen k hodnocení. :) U tebe jsem placku zvažoval, ale 3 mi nedovolili. Kdy bude další machr nevím, protože "schvalovatel" machrů je nejspíš na dovolené (nereaguje na PM).

 
Nahoru Odpovědět
7.7.2015 18:29
Avatar
Martin Bruna
Člen
Avatar
Odpovídá na Michal Žůrek - misaz
Martin Bruna:7.7.2015 19:37

Mohl by si prosím rozvést proč je kód zaprasenej, nějak mi není jasný co dělám špatně.

 
Nahoru Odpovědět
7.7.2015 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 56.