Code Kata: staňte sa lepším programátorom
Code Kata: staňte sa lepším programátorom
Jak jsem viděl to video ohledně F#, tak si říkám, že zde by se dokonale hodil (stejně jako LINQ). Jelikož ale nejsem v F# tak zběhlej tak se ptám, bude to někdo psát v F#? Osobně bych totiž takovejhle příklad ocenil.
//připojím se jen s C# kódem.
//připojím se jen s C# kódem.
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
Code Kata: staňte sa lepším programátorom
Ja to už mám napísane v F#, zverejním v štvrtok
-
- smartmaniak
- Příspěvky: 1138
- Registrován: pát bře 11, 2011 10:48
- Zařízení: Nokia Lumia 925
- Bydliště: Praha
Code Kata: staňte sa lepším programátorom
hotovo v C#, cca 15 radku volneho kodu, zitra sem hodim odkaz na pastebin.com
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
Code Kata: staňte sa lepším programátorom
Nejde o počet riadkov, ale o čitateľnost (eleganciu). V C by si to s makrami zbuchal aj na menej, ale bol by to hnusný imperatívny kódhotovo v C#, cca 15 radku volneho kodu, zitra sem hodim odkaz na pastebin.com
Code Kata: staňte sa lepším programátorom
První pokus, nejde o nic ideální, ale funguje.
//Z důvodů délky je tu jen jako odkaz TADY.
//Níže přepracovaná verze na základé rad.
//Z důvodů délky je tu jen jako odkaz TADY.
//Níže přepracovaná verze na základé rad.
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
-
- stálý přispěvatel
- Příspěvky: 439
- Registrován: úte čer 17, 2008 17:06
- Zařízení: Nokia Lumia 925, 32 GB
- Kontaktovat uživatele:
Code Kata: staňte sa lepším programátorom
Moje řešení:
http://pastebin.com/j7a3S9rW" onclick="window.open(this.href);return false;
http://pastebin.com/j7a3S9rW" onclick="window.open(this.href);return false;
Code Kata: staňte sa lepším programátorom
Yep, do příští Katy se poučím. Díky.
V rámci cvičení jsem se rozhodl na základě rad přepsat i aktuální Katu (abych nebyl až zas za takové nemehlo ).
Ono rozdělení do dvou metod a první vytahování relevantních dat tam být nemusí a může ušetřit jeden průchod. Nicméně v reálné aplikaci, by se s daty zřejmě provádělo více věcí a tak takového oddělení IMHO ničemu nevadí.
V rámci cvičení jsem se rozhodl na základě rad přepsat i aktuální Katu (abych nebyl až zas za takové nemehlo ).
Ono rozdělení do dvou metod a první vytahování relevantních dat tam být nemusí a může ušetřit jeden průchod. Nicméně v reálné aplikaci, by se s daty zřejmě provádělo více věcí a tak takového oddělení IMHO ničemu nevadí.
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
-
- přispěvatel
- Příspěvky: 134
- Registrován: úte zář 22, 2009 9:53
- Zařízení: Samsung B7610, Samsung Omnia 7
- Bydliště: Kopřivnice
Code Kata: staňte sa lepším programátorom
Tak taky jsme si vyzkousel tuhle "vyuku" a je to docela fajn tak uvidime co bude dal
Jinak to mam v podstate stejne jak zde psal Igor v C# takze to ani zde nebudu davat znova...teda az na to ze Igorovi to hazi spatny vysledek(C# i F#) ale to je asi jen drobnost z prehlednuteho zadani
Jinak to mam v podstate stejne jak zde psal Igor v C# takze to ani zde nebudu davat znova...teda az na to ze Igorovi to hazi spatny vysledek(C# i F#) ale to je asi jen drobnost z prehlednuteho zadani
-
- smartmaniak
- Příspěvky: 1138
- Registrován: pát bře 11, 2011 10:48
- Zařízení: Nokia Lumia 925
- Bydliště: Praha
Code Kata: staňte sa lepším programátorom
Moje reseni - jeden radek nactu string, na dalsich asi osmi radcich mam jeden velky Linq, ktery vrati vysledek
Slo by to rozdelit na vice operaci, validovat, komentovat, ale to urcite vime
http://pastebin.com/9mCGJSGv" onclick="window.open(this.href);return false;
jeste pridam komentar:
Split - rozdelit na stringy po radku
Where - vyfiltruji jen radky, ktere jsou dlouhe aspon 5 znaku a obsahuji cislo tymu na spravne pozici
Select - pro kazdy radek vytvor anonymni typ obsahujici jmeno, F a A hodnotu podle poradi v zadani, ktere je natvrdo zadane
Setrid podle nejmensiho rozdilu - hezka ukazka pouziti OrderBy a Math.Abs
First - vrat vysledek s nejmensim rozdilem, a to je vse
Slo by to rozdelit na vice operaci, validovat, komentovat, ale to urcite vime
http://pastebin.com/9mCGJSGv" onclick="window.open(this.href);return false;
jeste pridam komentar:
Split - rozdelit na stringy po radku
Where - vyfiltruji jen radky, ktere jsou dlouhe aspon 5 znaku a obsahuji cislo tymu na spravne pozici
Select - pro kazdy radek vytvor anonymni typ obsahujici jmeno, F a A hodnotu podle poradi v zadani, ktere je natvrdo zadane
Setrid podle nejmensiho rozdilu - hezka ukazka pouziti OrderBy a Math.Abs
First - vrat vysledek s nejmensim rozdilem, a to je vse
-
- smartmaniak
- Příspěvky: 1138
- Registrován: pát bře 11, 2011 10:48
- Zařízení: Nokia Lumia 925
- Bydliště: Praha
Code Kata: staňte sa lepším programátorom
Pouziti RegExu na nalezeni hodnot, zajimave netrivialni reseni
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
Code Kata: staňte sa lepším programátorom
Ďalej bude ďalšia Kata, dnes alebo zajtra ju vyberiem a zverením. S tou chybou máš pravdu, nepozorne čítam zadanierybar73 píše:Tak taky jsme si vyzkousel tuhle "vyuku" a je to docela fajn tak uvidime co bude dal
Som rád, že som niekoho motivoval k vyskúšaniu F#. Ten RegExp je zaujímavý nápad.Matajon píše:Tak já se taky přidám se svým F# pokusem.
Code Kata: staňte sa lepším programátorom
//Staré řešení tam pořád je hezky vyděné jako odkaz. Jen jsem nechtěl (bylo delší) aby zabíralo tolik místa (bylo opravdu delší).
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
Code Kata: staňte sa lepším programátorom
Na ďalší týždeň trochu jednoduchej matematiky. Okrem kódu zverejňujte aj číselný výsledok. Termín: štvrtok 16.8.2012.
Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
-
- smartmaniak
- Příspěvky: 1138
- Registrován: pát bře 11, 2011 10:48
- Zařízení: Nokia Lumia 925
- Bydliště: Praha
Code Kata: staňte sa lepším programátorom
Snad jsem to spravne pochopil, ze cilem je napsat program, ktery vrati soucet lichych cisel z Fibonacciho posloupnosti, ktere jsou mensi nez 4 miliony.
Mozna by stalo za to zkusit i pokrocilejsi variantu - soucet vsech lichych cisel z Fibonacciho posloupnosti, ktere maji mene nez 4 miliony cifer
Mozna by stalo za to zkusit i pokrocilejsi variantu - soucet vsech lichych cisel z Fibonacciho posloupnosti, ktere maji mene nez 4 miliony cifer
Code Kata: staňte sa lepším programátorom
nepojde to nejako analyticky vyjadrit?
-
- častý přispěvatel
- Příspěvky: 264
- Registrován: stř srp 19, 2009 7:09
- Zařízení: Nexus 5, Galaxy S3, Nokia X, iPad mini
Code Kata: staňte sa lepším programátorom
Tahle poslední, to je taková vysloveně "úloha z reálného života" :D Ale s F# si tam asi užijete...
-
- častý přispěvatel
- Příspěvky: 228
- Registrován: stř bře 28, 2012 12:46
- Zařízení: ano
Code Kata: staňte sa lepším programátorom
v F# sa to napíše práveže jednoduchšie ako v C#Tomáš Slavíček píše:Tahle poslední, to je taková vysloveně "úloha z reálného života" :D Ale s F# si tam asi užijete...
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 17 hostů