[zap] - 24.1. - 14:00

Uživatelský avatar
Angel
Matfyz(ák|ačka) level III
Příspěvky: 121
Registrován: 9. 9. 2005 19:28
Typ studia: Informatika Mgr.
Bydliště: Znojmo / Praha
Kontaktovat uživatele:

[zap] - 24.1. - 14:00

Příspěvek od Angel »

Nebylo to az tak tezke, je vsak zajimave, ze ho udelali pouze dva (mozna tri?) lidi. Ostatni odesli s prazdnou, asi spatnej den :).

Zadani bylo asi takovedle:
Napiste sablonu pro reprezentaci komplexnich cisel. (Moc toho ani nemusi umet, zadne operatory + - atd...)

Na std. vstupu mate zadany komplex. cisla v nasl. forme:
C[4,2]
L[-1,2]
D[3,3]
D[-2,10]
kde C - char, L - long, D - double, prvni v zavorce realna cast, druha imaginarni a mate je vypsat na std. vystup podle velikosti (absolutni hodnoty) z komplexniho cisla.

Cisla si v nejake pomocne dat. strukture musite uchovavat jako komplexni cisla, ne jako string nebo jinak - tuhle poznamku jsem jaksi nazacatku neslysel, takze po naprogramovani to touhle cestou, sem to jeste musel znova cely predelat, nakonec sem byl mezi temi, kteri udelali.
Zdrojak sem bohuzel nechal lezet v labu na disku.
johnny
Donátor
Donátor
Příspěvky: 95
Registrován: 13. 12. 2005 00:31
Typ studia: Informatika Mgr.
Bydliště: Trója

Příspěvek od johnny »

Uf, cože? Já odcházel druhý. Tady je moje řešení, ale vůbec ho neberte jako ukázkové. Je tam několik zkratek, aby to prostě nějak splňovalo zadání. Připomínky ale žádné velké nebyly.
Možná, že problém byl v tom tady úspěšně zkombinovat víc věcí z OOP - abstraktní třídy, polymorfismus, šablony, přetížené operátory, z STL iostream, vector, sort. Já použil k tomu sortu funktor a na ošetření chybného výstupu i výjimky, připadalo mi to nejsnadnější, ale to nebylo nutně potřeba. V ostatních příkladech tady na fóru mi připadá, že stačí použít docela malou podmnožinu z těch věcí, co jsem tady vyjmenoval, a přidat k tomu nějaké algoritmické myšlení, spíš než znalosti C++/OOP.
Přílohy
zt_oop_2006-01-24.zip
(1.19 KiB) Staženo 272 x
Uživatelský avatar
Angel
Matfyz(ák|ačka) level III
Příspěvky: 121
Registrován: 9. 9. 2005 19:28
Typ studia: Informatika Mgr.
Bydliště: Znojmo / Praha
Kontaktovat uživatele:

reseni

Příspěvek od Angel »

Delal jsem to vcelku podobne, akorat sem to rval do priority_queue (ukazatele na tu abstraktni class) s vlastnim komparatorem, coz me prijde pohodlnejsi.
Taky sem si nakonec rikal, ze to zadani bylo docela lehky, ten neuspech bude asi v tom, co rikas, kombinace vseho moznyho.

----
Jinak, meli sme Zavorala, kontroloval to tim zpusobem, ze sem mu predvedl muj vstup a vystup, pak se kouknul na definici ty sablony a na kousek main a vic ho nezajimalo, takze byl dost v pohode.
Uživatelský avatar
Angel
Matfyz(ák|ačka) level III
Příspěvky: 121
Registrován: 9. 9. 2005 19:28
Typ studia: Informatika Mgr.
Bydliště: Znojmo / Praha
Kontaktovat uživatele:

Příspěvek od Angel »

johnny píše:Tady je moje řešení, ale vůbec ho neberte jako ukázkové.
Jinak, co se tak divam, zadani bylo char, long, double, mas tam misto char int :-). Se tam jinak musela delat specializace ty fce print pro char, jinak to vypisovalo blbosti...
Uživatelský avatar
wintermute
Matfyz(ák|ačka) level III
Příspěvky: 153
Registrován: 23. 5. 2005 22:06
Typ studia: Informatika Mgr.

Příspěvek od wintermute »

Přečetl jsem si to tvoje zadání a říkal jsem si, že jsem to asi nepochopil, protože se mi to zdálo moc jednoduchý. Ale pak jsem se koukl na zdroják, a fakt že jsem to pochpil dobře. Jaktože to tolik lidí projelo?
johnny
Donátor
Donátor
Příspěvky: 95
Registrován: 13. 12. 2005 00:31
Typ studia: Informatika Mgr.
Bydliště: Trója

Příspěvek od johnny »

wintermute píše:Přečetl jsem si to tvoje zadání a říkal jsem si, že jsem to asi nepochopil, protože se mi to zdálo moc jednoduchý. Ale pak jsem se koukl na zdroják, a fakt že jsem to pochpil dobře. Jaktože to tolik lidí projelo?
Trochu jsem nad tím přemýšlel. Třeba od těch zlomků, co tady byly dřív, se to liší tak, že je k tomu potřeba přidat to třídění, ale hlavně: z čeho to komplexní číslo bude složeno, je známo až za běhu. Takže (jen hádám) největší problém většině lidí asi udělalo spojit polymorfismus a šablony.
Uživatelský avatar
David Nohejl
Matfyz(ák|ačka) level III
Příspěvky: 135
Registrován: 10. 10. 2004 17:23
Typ studia: Informatika Bc.
Bydliště: Praha
Kontaktovat uživatele:

Příspěvek od David Nohejl »

jj, nebylo to tezky. Zavoralova kontrola byla taky v pohode... asi pul hodiny sem to zkoumal jestli to nekde nemuze hapat, a on to ani netestoval :(
Never forget: Stay kul and happy (I.A.)
Odpovědět

Zpět na „2005“