IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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: Ruby pro začátečníky

Aktivity
Avatar
renfri
Člen
Avatar
renfri:18.12.2014 20:45

Najde se tu nejaky rubista, ktery by mi do konce roku zvladl dat tak 2-4hodiny doucovani na tema prace s vnorenymi cykly a nahrazeni retezce? 250,-/hod, Praha. Dekuji

 
Odpovědět
18.12.2014 20:45
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na renfri
David Hartinger:18.12.2014 21:15

Ahoj, Ruby jsem neviděl pár let, ale asi bych se do toho dostal. Co přesně potřebuješ? Nejsi z UCL? :D

Nahoru Odpovědět
18.12.2014 21:15
New kid back on the block with a R.I.P
Avatar
renfri
Člen
Avatar
Odpovídá na David Hartinger
renfri:18.12.2014 21:16

No jo, jsem :-) Prikladam zadani, jde o dve cviceni...

 
Nahoru Odpovědět
18.12.2014 21:16
Avatar
renfri
Člen
Avatar
Odpovídá na David Hartinger
renfri:18.12.2014 21:18

1. Záměna podřetězce

Napište program, který v zadaném řetězci nahradí všechny výskyty určitého podřetězce jiným. Ve zdrojovém kódu v poskytnutém workspace naleznete proměnnou input s původním textem, proměnnou what s textem, který máte v obsahu proměnné input hledat, a proměnnou to_what s textem, který máte v obsahu input zaměnit za obsah what. Výsledný text přiřaďte do proměnné output. Obsah proměnné input musí zůstat nezměněn.
Příklad: bude-li proměnná input obsahovat text „Row, row, row your boat“, proměnná what text „row“, proměnná to_what text „column“, obsahem výsledné proměnné output bude „Row, column, column your boat“.

2. Doplnění slovníků

Napište program, který zadanou kolekci slovníků doplní o slovníky inverzní. Struktura slovníků je stejná jako v příkladu „Překlad mezi více jazyky“ přednášky Vnořené kolekce – příklady: překladové slovníky; slovníky jsou uloženy v proměnné input_dictionaries. Vaším úkolem je každý slovník z input_dictionaries zkopírovat do proměnné output_dictionaries a navíc do output_dictionaries přidat ještě i slovník inverzní.
Poznámka: pro jednoduchost můžete předpokládat, že pokud ve struktuře input_dictionaries existuje slovník z jazyka A do jazyka B, pak v ní neexistuje slovník z B do A.
Poznámka: řetězce je pochopitelně nutné zpracovávat „ručně“ po znacích. Není dovoleno používat metody jako gsub či podobné, a to ani v případě, že je znáte.

 
Nahoru Odpovědět
18.12.2014 21:18
Avatar
renfri
Člen
Avatar
renfri:18.12.2014 21:29

Příklad

Předpokládejme následující obsah proměnné input_dictionaries:

input_dictionaries = {
"EN" => {
"CZ" => {
"dog" => ["pes"]
},
"DE" => {
"tiger" => ["Tiger"]
}
}
"CZ" => {
"SK" => {
"pes" => ["pes"]
}
}
}
Odpovídající obsah proměnné output_dictionaries by byl následující:
{
"EN" => {
"CZ" => {
"dog" => ["pes"]
},
"DE" => {
"tiger" => ["Tiger"]
}
},
"CZ" => {
"EN" => {
"pes" => ["dog"]
},
"SK" => {
"pes" => ["pes"]
}
},
"DE" => {
"EN" => {
"Tiger" => ["tiger"]
}
},
"SK" => {
"CZ" => {
"pes" => ["pes"]
}
}
}
Výstup programu

Kromě korektního naplnění proměnné output_dictionaries (proměnná input_dictionaries musí zůstat nedotčena) vypište do konzole obsahy všech slovníků, a to v následujícím tvaru (který odpovídá obsahu output_dictionaries ze zdrojového kódu v poskytnutém workspace):
Výstup
Dictionary EN -> CZ:

  • dog: pes
  • elephant: slon
  • tiger: tygr
  • month: mesic
  • moon: mesic
  • will: vule, zavet

Dictionary EN -> DE:

  • dog: Hund
  • tiger: Tiger
  • cat: Katze

Dictionary EN -> SK:

  • camel: tava
  • tiger: tiger
  • stork: bocian

Dictionary CZ -> EN:

  • pes: dog
  • slon: elephant
  • tygr: tiger
  • mesic: month, moon
  • vule: will
  • zavet: will

Dictionary CZ -> SK:

  • pes: pes
  • tygr: tiger
  • velbloud: tava

Dictionary CZ -> DE:

  • pes: Hund
  • hodina: Stunde, Uhr

Dictionary DE -> EN:

  • Hund: dog
  • Tiger: tiger
  • Katze: cat

Dictionary DE -> CZ:

  • Hund: pes
  • Stunde: hodina
  • Uhr: hodina

Dictionary DE -> SK:

  • Hund: pes

Dictionary SK -> CZ:

  • pes: pes
  • tiger: tygr
  • tava: velbloud

Dictionary SK -> EN:

  • tava: camel
  • tiger: tiger
  • bocian: stork

Dictionary SK -> DE:

  • pes: Hund
 
Nahoru Odpovědět
18.12.2014 21:29
Avatar
roja
Člen
Avatar
Odpovídá na renfri
roja:27.12.2014 16:48

Ahoj, mam stejny problem.podarilo se ti najit reseni a doucovani? Neco se da najit tady, ale neni to prilis srozumitelne...
http://www.ruby-lang.wz.cz/…y/string.php

 
Nahoru Odpovědět
27.12.2014 16:48
Avatar
renfri
Člen
Avatar
Odpovídá na roja
renfri:27.12.2014 16:51

Ten prvni ukol uz mam, druhy jeste ne, ale zda se mi snazsi, jen zatim nebyl cas. :-)
Doucovani pres svatky je mizerie, nekoho jsem nasla, ale ma cas zas az od ledna..

 
Nahoru Odpovědět
27.12.2014 16:51
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 7 zpráv z 7.