Ukázky programů ze cvičení - Programování 1
2. hodina (11.10.2012)
- Vyhledávání v setříděném seznamu - algoritmus zapsaný v pseudokódu.
3. hodina (18.10.2012)
- Načítání čísel I. - načtení n čísel: ukázka použití for-cyklu. Ke stažení: code.pas.
- Načítání čísel II. - načtení posloupnosti čísel ukončených -1: ukázka použití while-cyklu. Ke stažení: code.pas.
- Mini kalkulačka - procvičení podmínky (if). Ke stažení: code.pas.
4. hodina (25.10.2012)
- Dělitelé v intervalu - procvičení podmínky for-cyklu a operace mod. Ke stažení: code.pas.
- Kladná čísla - procvičení while-cyklu (trochu jiné zadání než na hodině). Ke stažení: code.pas.
- Obrácený výpis n čísel - procvičení for-cyklu a pole. Ke stažení: code.pas.
- Test prvočíselnosti I. - elegantní (ale ne ideálně efektivní) řešení pomocí while cyklu. Ke stažení: code.pas.
- Test prvočíselnosti II. - efektivnější řešení pomocí for-cyklu a boolean proměnné. Ke stažení: code.pas.
5. hodina (1.11.2012)
- Testík 1 - princezniny korále: první řešení. Ke stažení: code.pas.
- Testík 2 - princezniny korále: druhé řešení. Ke stažení: code.pas.
- Hádanka 1 - aneb pozor na indentaci, begin a end. Ke stažení: code.pas.
- Hádanka 2 - kreslení z hvězdiček. Ke stažení: code.pas.
- Hádanka 3 - aneb pozor na indenatci a středníky. Ke stažení: code.pas.
- Hádanka 4 - aneb pozor na závorky a prioritu operací. Ke stažení: code.pas.
- NSD 1 - pomalá verze Euklidova algoritmu. Ke stažení: code.pas.
- NSD 2 - pokus o rychlejší verzi, ale s chybou. Ke stažení: code.pas.
- NSD 3 - rychlejší verze Euklidova algoritmu. Ke stažení: code.pas.
- Faktoriál malého čísla - ukázka funkce. Ke stažení: code.pas.
- Kódy všech znaků - operace chr. Ke stažení: code.pas.
- Je zadaný znak cifra? - ukázka funkce a použití ord. Ke stažení: code.pas.
- Hodnota cifry - ukázka funkce a použití ord. Ke stažení: code.pas.
6. hodina (8.11.2012)
- Testík - funkce jeZnak. Ke stažení: code.pas.
- Opisovač vstupu - detekce konce vstupu pomocí EOF, načítání vstupu po znacích. Ke stažení: code.pas.
- Jednoduchý devypatlátor - použití ord, chr, převody znaků. Ke stažení: code.pas.
- Hornerovo schema - načítání čísla (v desítkové soustavě) po znacích a převedení na integer. Ke stažení: code.pas.
- Z dvojkove - načtení čísla zadaného v dvojkové soustavě a převedení na integer pomocí Hornerova schematu. Ke stažení: code.pas.
- Rekurzivní výpis sestupný - ukázka jednoduché lineární rekurze na sestupný výpis čísel. Ke stažení: code.pas.
- Rekurzivní výpis vzestupný - ukázka jednoduché lineární rekurze na vestupný výpis čísel. Ke stažení: code.pas.
- Ladění v Pascalu - součást úkolu - na tomto (chybném) programu si vyzkoušejte ladící prostředky Pascalu a odhalte všechny chyby. Ke stažení: code.pas.
- Soubory 1 - převod velkých písmen na malá - ze standardního vstupu na standardní výstup. Ke stažení: code.pas.
- Soubory 2 - převod velkých písmen na malá - ze souboru na standardní výstup. Jako vstup můžete použít například tento soubor in1.txt. Ke stažení: code.pas.
- Soubory 3 - převod velkých písmen na malá - ze souboru do souboru. Jako vstup můžete použít například tento soubor in1.txt. Výstup hledejte v souboru out1.txt. Ke stažení: code.pas.
- Soubory 4 - výpis kódů všech znaků do souboru. Výstup hledejte v souboru znaky.txt. Ke stažení: code.pas.
7. hodina (15.11.2012)
- Testík - Str2Int. Ke stažení: code.pas.
- Parametry 1 - předávání odkazem a hodnotou. Ke stažení: code.pas.
- Parametry 2 - předávání odkazem a hodnotou. Ke stažení: code.pas.
- Parametry 3 - předávání odkazem a hodnotou. Ke stažení: code.pas.
- Generování 1 - generování čísel o K cfirách v jedničkové soustavě. Ke stažení: code.pas.
- Generování 2 - generování čísel o K cfirách ve dvojkové soustavě. Ke stažení: code.pas.
- Generování 3 - generování čísel o K cfirách v soustavě o základu N. Ke stažení: code.pas.
8. hodina (22.11.2012)
- Testík - část 1 - funkce, procedury a předávání odkazem a hodnotou. Ke stažení: code.pas.
- Testík - část 2 - funkce, procedury a předávání odkazem a hodnotou. Ke stažení: code.pas.
- Testík - část 3 - funkce, procedury a předávání odkazem a hodnotou. Ke stažení: code.pas.
- Faktoriál - ukázka jednoduché nevětvící se rekurze. Ke stažení: code.pas.
- Mocnina - ukázka jednoduché nevětvící se rekurze. Ke stažení: code.pas.
- Součet - ukázka jednoduché nevětvící se rekurze. Ke stažení: code.pas.
- Binární vyhledávání - ukázka nevětvící se rekurze. Ke stažení: code.pas.
- Rozklad na sčítance - již větvící se trošku složitější rekurze. Ke stažení: code.pas.
- Batoh 1 - část domácího úkolu - co (a jak) dělá tento rekurzivní program? Ke stažení: code.pas.
- Batoh 2 - část domácího úkolu - co (a jak) dělá tento rekurzivní program? Ke stažení: code.pas.
9. hodina (29.11.2012)
- Dlouhá čísla - ukázka sčítačky celých (tedy kladných i záporných) čísel.
Použití vlastního datového typu a recordu. Nejedná se zrovna super-krátké řešení, ale zase je pěkně dekomponované. Ke stažení: code.pas.
11. hodina (13.12.2012)
- Fronta - povídání o datové struktuře fronta.
- UnitData - jednotka obsahující datový typ pro položky, které budeme ukládat do zásobníku či fronty. Ke stažení: code.pas.
- UnitZasobnik - jednotka obsahující datovou strukturu zásobník včetně základních operací pro práci se zásobníkem. Ke stažení: code.pas.
- Test zásobníku - program testující, zda nám zásobník funguje správně. Ke stažení: code.pas.
- UnitFronta - chcete-li domácí úkol napsat jako knihovnu, můžete vyjít z tohoto kódu. Ke stažení: code.pas.
program opisovacVstupu;
var c : char;
begin
while not(EOF) do begin
read(c); write(c); end;
end.
Kdo byste našel v nějakém z těchto programů chybu, dejte mi to vědět - můžete tak získat bonusové body (1 chyba ≈ 5 bodů). ;)