Příklady ze cvičení - Kryl
Napsal: 15. 7. 2016 16:11
Pro další generace a pro procvičení ke zkoušce sem dávám příklady, co nám zadával Kryl na cvičení. Přišly mi docela užitečný, ale jsou pracnější...
- Prolog: Rozdělte seznam na 5 částí, tak aby se délka seznamů lišila nejvýše o jeden prvek.Pořadí prvků v seznamu by mělo být zachováno.
Kód: Vybrat vše
% rozdel(+Seznam, -S1, -S2, -S3, -S4, -S5):- rozdeli seznam na skoro % stejne casti (+/-1), |Seznam| >= 5
- Prolog: Transponujte matici
Kód: Vybrat vše
%trans(+Mat, -Trans):- Transponuje matici
- Prolog: Napište QuickSort v Prologu.
- Prolog: Vypište seznam uzlů ve stromu a seřaďte je podle vzdálenosti od nejbližšího listu.
Kód: Vybrat vše
% demo strom d(t( t(nill,a,nill), b, t( nill, c, t( nill, d, t( t( t(nill,e,nill),f,nill), g, t(nill,h,nill) ) ) ) )).
- Prolog: Naprogramujte procedury, které realizují převody mezi dvěma reprezentacemi permutací čísel 1..N Příklad:
Kód: Vybrat vše
% p(N,Vektor obrazů) % c(N,Seznam netriviálních cyklů)
aKód: Vybrat vše
p(6,[3,5,1,2,4,6])
reprezentují stejnou permutaciKód: Vybrat vše
c(6,[ [1,3], [2,5,4] ])
identita na 4 prvních je reprezentována jakoaKód: Vybrat vše
p(4,[1,2,3,4])
Kód: Vybrat vše
c(4,[]).
- Prolog: Kompletní program, který pomocí dijkstrova algoritmu umí odpovídat na otázky
Včetně vstupu ze souboru a výstupu do souboru
Kód: Vybrat vše
nejkrcesta(+STart,+cíl, -Delka, -NejkrCesta) nejkrcesty(+Strat, -SseznamNejkratšíchCestSDelkamiDoVsechDostupnýchVrcholu)
- Hascel: Derivace a n-tá derivace mocninné řady
- Hascel: Listy binárního stromu odleva do prava bez konkatenace
- Hascel: Reprezentujte řídkou matici pomocí typu
Význam: počet řádek, počet sloupců, seznam nenulových členů (i,j, aij) řádek i, sloupec j, hodnota aij
Kód: Vybrat vše
data Mat = M Int Int [ (Int,Int,Float0 ]
uspořádaný podle i a potom podle j
Naprogramujte transpozici a pomocí ní násobení řídkých matic