Příklady - zásobník, fronta, seznam

  1. Zásobník celých čísel z intervalu 0..15. Do zásobníku načítejte z klávesnice celá čísla z tohoto intervalu, konec cyklu: číslo mimo interval.
    Potom postupně tato čísla vybírejte. Jestliže je číslo z intervalu 0..7, pak změňte barvu pozadí písma (textbackground), jinak barvu textu (textcolor), vypište něco na obrazovku (jakýkoliv řetězec) a čekejte na stisknutí klávesy (ENTER, tedy readln) - použijte konstrukci   while not Prazdny do ...
    Po vybrání posledního čísla vraťte barvy na původní a vypište hlášení "Jsem na dně (zásobníku)".
    type
      spoj = ^prvek;
      prvek = record
        hodnota: 0..15;
        dalsi: spoj;
      end;
    
  2. Kalkulačka: hodnota v prvku fronty (jednosměrného seznamu) je záznam se dvěma vnitřními proměnnými: znaménko (+, -, *, /, implementace možná jako char nebo výčtový typ), a číslo (celé).
    Nejdřív z klávesnice načteme "posloupnost příkazů" způsobem "zadejte operaci:", "zadejte číslo:". Tato data postupně načítáme do prvků fronty. Konec cyklu: jako operace je zadáno =.
    Potom načtěte celé číslo a postupně na ně aplikujte načtené operace z fronty (+, -, *, DIV), pozor - dělení bude celočíselné. Vypište výsledek.
    Při procházení frontu nerušte, znovu načtěte číslo a opět vypočtěte podle výrazu.
    Lze tak vypočíst (bez priority operátorů) například výraz   x + 25 - 6 * 2 + 8 =
    type
      THodnota = record
        znam: char;
        cislo: integer;
      end;
    
      spoj = ^prvek;
      prvek = record
        hodnota: THodnota;
        dalsi: spoj;
      end;
    
  3. [náročnější] Seznam příkazů (jednoduchý program): Do obousměrného seznamu prvků typu char načítáme jednotlivá písmena K (krok), L (otočit doleva), P (otočit doprava), E (konec programu), cyklus končí zadáním písmene E.
    Potom seznam vypište od prvního prvku k poslednímu a umožněte v něm provádění úprav - postupně procházejte jednotlivé prvky seznamu a ptejte se, zda chcete prvek smazat, upravit jeho hodnotu, přidat za prvek ještě jiný prvek s určitou hodnotou nebo nechat tak jak je.
    Pak ukliďte obrazovku a s kurzorem provádějte přesně to, co bylo přikázáno v seznamu (unita CRT, použití příkazů gotoxy, wherex, wherey). Po vykonání každého příkazu odstraňte ze seznamu ten prvek, který ho reprezentuje, tedy po provedení celého programu bude seznam zrušený.
     
  4. Vytvořte seznam řetězců (string[20]). Prvky seznamu načítejte z klávesnice, konec načítání = načten prázdný řetězec.
    Potom seznam setřiďte bublinkovým tříděním (využijte toho, že se vyměňují vždy dva sousední prvky) a vypište (každý řetězec na nový řádek).
    Na konci programu nezapomeňte uvolnit paměť zabranou seznamem.