1iai2: Rozdiel medzi revíziami

Z Pascal
Prejsť na: navigácia, hľadanie
(bodovanie)
 
(13 intermediate revisions by the same user not shown)
Riadok 1: Riadok 1:
 
{{Nadpis0|cvičenia pre 1iai2}}__NOTOC__
 
{{Nadpis0|cvičenia pre 1iai2}}__NOTOC__
  
 
<!-- -->
 
 
== aktuálna nepovinná domáca úloha ==
 
 
{{Podnadpis1|11. ndú z 27.11.2012}}
 
* predpokladáme, že už je definovaná trieda '''TMojRobot''', ktorá vie nakresliť binárny strom úrovne '''NN''' a veľkosti '''DD''' (tieto dve hodnoty sa inicializujú v konštruktore: náhodné '''NN''' z intervalu <3, 7>, '''DD''' z intervalu <30, 60>):
 
{{Prog}}
 
type
 
  TMojRobot = class(TRobot)
 
    NN, DD: Integer;
 
    constructor Create(XX, YY: Integer);
 
    procedure Strom(N: Integer; D: Real);
 
    procedure Kresli;
 
  end;
 
|}
 
* okrem toho máme dynamické pole robotov: do ktorého sa budú ukladať vytvorené roboty
 
{{Prog}}
 
var
 
  R: array of {{Blue|TRobot}};
 
|}
 
* treba naprogramovať '''Image1MouseDown''', '''Image1MouseMove''', '''Image1MouseUp''':
 
** pri kliknutí do plochy ('''Image1MouseDown'''), buď vznikne nový robot (pridá sa do poľa '''R'''), alebo sa naštartuje ťahanie už existujúceho robota (ak sa kliklo blízko niektorého)
 
** ak sa naštartovalo ťahanie, v '''Image1MouseMove''' sa ťahanému robotu zmení (X, Y), zmaže sa plocha a všetky sa znovu nakreslia (metóda '''Kresli''')
 
** v '''Image1MouseUp'''sa zruší príznak, že niektorý robot je ťahaný
 
  
 
<!-- -->
 
<!-- -->
Riadok 35: Riadok 10:
 
|- align="center"
 
|- align="center"
 
! width="80" | ||width="20"| 1 ||width="20"| d1 ||width="20"| 2 ||width="20"| d2 ||width="20"| 3 ||width="20"| d3 ||width="20"| 4 ||width="20"| d4 ||width="20"| 5 ||width="20"| d5 ||width="20"| 6 ||width="20"| d6 ||width="20"| 7 ||width="20"| d7 ||width="20"| 8 ||width="20"| d8 ||width="20"| 9 ||width="20"| d9 ||width="20"| 10 ||width="20"| d10 ||width="20"| 11 ||width="20"| d11 ||width="20"| &sum;
 
! width="80" | ||width="20"| 1 ||width="20"| d1 ||width="20"| 2 ||width="20"| d2 ||width="20"| 3 ||width="20"| d3 ||width="20"| 4 ||width="20"| d4 ||width="20"| 5 ||width="20"| d5 ||width="20"| 6 ||width="20"| d6 ||width="20"| 7 ||width="20"| d7 ||width="20"| 8 ||width="20"| d8 ||width="20"| 9 ||width="20"| d9 ||width="20"| 10 ||width="20"| d10 ||width="20"| 11 ||width="20"| d11 ||width="20"| &sum;
|-
 
! Baláži Tomáš
 
| 4 || 1 || 5 || 1 || 1 || || 2 ||0.5|| 1 || || 1 || || 4 || || || || 4 || || || || || || 25
 
 
|-
 
|-
 
! Belica Martin
 
! Belica Martin
| 4 || 1 || 5 || 1 || 5 || 1 || 4 ||0.5|| 5 || 1 || 5 || 1 ||4.5|| 1 || 2 || 1 ||4.5|| 1 || 4 || || || || '''40'''
+
| 2 || 1 ||4.5|| 1 || 5 || 1 || 4.5 || 1 || 3 || || 4 || 1 ||3.5|| 2 || 2 || || 5 ||0.5|| 5 || || || || {{Red|40}}
 
|-
 
|-
 
! Bucha Samuel
 
! Bucha Samuel
| 4 || 1 || 5 || 1 || 3 || 0 || 2 || 1 || 5 || || || || || 1 || 4 || 1 || 1 || || 3 || 2 || 4 || || 37
+
|0.5||0.5||0.5|| || 4 || || 2 || || 2 || || - || || 2 || || 2 || ||1.5|| || 1 || ||0.5|| || 15.5
|-
+
! Cisárik Michal
+
| 5 || 1 || 6 || 1 || 2 || || 0 || || || || || || 1 || || || ||4.5|| || || || || || 20
+
 
|-
 
|-
 
! Dobiáš Dominik
 
! Dobiáš Dominik
| 4 || 1 || 5 || 1 || 5 || 1 || 2 ||0.5|| 3 || || 1 || 1 || 3 ||0.5|| 4  || 1 || 4.5 || || 3 || 2 || 4 || || '''40'''
+
| 2 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 4 || || - || || 2 || ||3.5|| || 3 || 2 || || || {{Red|40}}
|-
+
! Floch Peter
+
| 5 || 1 || 5 || 1 ||3.5|| || 0 || || || || || || 2 || || || || 4 || || || || || || 22
+
 
|-
 
|-
 
! Hanzlík Roman
 
! Hanzlík Roman
| 5 || 1 || 5 || 0 || 4 || 0 || 5 ||0.5|| 5 || || 2 || || 4.5 || || 5 || || 4 || || 1 || || || || 39
+
| 5 || || - || || 1 || || 1 || || 2 || || 1 || || 2 || || - || || - || || 3 || ||0.5|| || 15.5
 
|-
 
|-
 
! Hervay Ákos
 
! Hervay Ákos
| 4 || || 5 ||0.5|| ||0.5|| 5 ||0.5|| || 0 || 1 || 1 || 4 ||0.5|| 4 ||0.5|| || || || || 4 || || 31
+
| - || || - || ||3.5|| ||2.5|| ||3.5||0.5|| 3 || || - ||0.5|| 2 || || 1 || ||4.5|| ||4.5|| || 25.5
|-
+
! Ivan Róbert
+
| 4 || || 5 || 1 || 3 || || 2 || || 4 || || 4 || ||4.5|| || 3 || || 2 || || 3 || || || || 32
+
 
|-
 
|-
 
! Jankovič Erik
 
! Jankovič Erik
| 5 || 1 || 5 || 1 || 4 ||0.5|| 2 || || || 0 || 2 || || ||0.5|| 4 || ||4.5|| 1 || 3 || || 2 || 1 || 35
+
| - || 1 ||4.5|| 1 || - ||0.5|| 1 || 1 ||3.5|| || - || || 5 || 1 ||4.5|| 1 || 5 || ||4.5|| 2 || || 1 || 36.5
 
|-
 
|-
 
! Knechta Dominik
 
! Knechta Dominik
| 5 || 1 || 4 || 1 ||4.5|| || 1 ||0.5|| 3 || || 1 || 1 || 1 || || 2 || ||3.5|| || 4 || || 2 || || 32
+
| 3 || ||4.5|| || 4 || ||0.5|| || - || || 1 || || 2 || || 2 || ||1.5|| || 2 || || 2 || || 21
 
|-
 
|-
 
! Kováč Matúš
 
! Kováč Matúš
| 5 || 1 || 4 || 1 || 5 || || 4 || || 2 || || 2 || || || || 3 || || 1 || || 2 || || || || 29
+
| 5 || ||4.9|| || 1 || || 1 || || 3 || || 1 || ||2.5|| || 2 || ||4.5|| || 3 || || 5 || || 24.9
 
|-
 
|-
! Kúdora Dávid
+
! Krampl Werner
| 5 || 1 || 5 || 1 || ||0.5|| 5 ||0.5|| || 0 || 1 || || || ||4.5|| || || || || || || || 24
+
|4.5|| 1 || 5 || || 5 || ||4.5|| 1 || 2 ||0.5|| 2 || 1 ||3.5|| 1 || 5 || 1 || 5 || 1 || 5 || || 5 || || {{Red|40}}
|-
+
! Kužel Marek
+
| 5 || 1 || 5 || 1 ||4.5|| || 0 || || || || || || 1 || || || ||4.5|| || || || || || 22
+
|-
+
! Martinka Marek
+
| 5 || 1 || 5 || 1 || 3 || || || || 1 || 0 || 1 || || 2 || 1 ||2.5|| || 2 || || 1 || || || || 25
+
|-
+
! Polakovič Luboš
+
| 5 || 1 || 5 || 1 || 3 || 0 || 5 || || || || 4 || || 3 || || || || 4 || || || || || || 31
+
|-
+
! Potisk Martin
+
| - || 1 || 5 || || 3 || 1 || ||0.5|| || 0 || 2 || || 3.5 ||0.5|| 4 || || 4.5 || || || || || || 25
+
|-
+
! Prékop Tomáš
+
| 4 || 1 || 5 || || || 1 || 2 || 1 || 1 || || || || || 0 ||1.5|| 1 || 1 ||0.5|| 4 || 1 || 4 || || 28
+
 
|-
 
|-
 
! Sedláček Jakub
 
! Sedláček Jakub
| 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 4 || 1 ||4.5|| || 4 || || || || '''40'''
+
| - || ||4.5|| ||2.5|| || 2 || || 2 || || - || || - || || 2 || || - || || 3 || ||1.5|| || 17.5
 
|-
 
|-
 
! Sedláček Peter
 
! Sedláček Peter
| 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 4 || 1 || 5 || 1 || 5 ||0.5|| 5 || 1 || 4 || 1 || 5 || || || || '''40'''
+
|4.5|| ||4.5|| ||4.5|| ||3.5|| ||2.5|| || - || || - || || 5 || || - || || 5 || ||1.5|| || 31
|-
+
! Siraň Radovan
+
| 5 || || 5 || 1 || 3 || 1 || 1 ||0.5|| 0 ||0.5|| 2 || 1 || 1 ||0.5|| 3 ||0.5||4.5|| ||3.5|| 0.5 || 3 || || 35
+
 
|-
 
|-
 
! Sklenčár Viktor
 
! Sklenčár Viktor
| 4 || 1 || 5 || 1 ||4.5|| 1 || 5 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 3 || 1 || 5 || 1 ||3.5|| || 3 || || '''40'''
+
| 5 || 1 ||2.5|| 1 ||3.5|| 1 || 5 || 1 || 3 || || 1 || 1 || 3 || 1 || 2 || 1 || 5 || 1 || 5 || 2 || || || {{Red|40}}
|-
+
! Sopko Martin
+
| 4 || 1 || - || || 3 || 1 || 1 || || 3 || || || || 4 || ||2.5|| || 4 || || 1 || || || || 25
+
|-
+
! Šifra Matej
+
| 5 || 1 || 5 || 1 ||2.5|| 1 || || 1 || 1 || || 1 || || ||0.5|| 3 || || || || 1 || 0 || 2 || || 25
+
 
|-
 
|-
 
! Šiškovič Joachim
 
! Šiškovič Joachim
| 5 || 1 || 5 || 1 || 5 || 1 || 1 || || 4 || 1 || 3 || 1 ||0.5|| 1 || 3 ||0.5||4.5|| ||3.5|| || 3.5 || || '''40'''
+
| - || ||4.5|| 1 || - || || 5 || ||3.5|| || 3 || ||4.5|| 2 || 1 || || 4 || || 3 || || 5 || || 35.5
 
|-
 
|-
 
! Šuník Martin
 
! Šuník Martin
| 4 || 1 || 5 || 1 || 5 || 1 || 5 || 1 || 1 || 1 || || 1 || 5 || 1 || 5 || 1 || 5 || ||4.5|| || 5 || || '''40'''
+
| - || 1 || 5 || 1 || - || 1 ||4.5|| 1 || 5 || || 5 || 1 || 5 || 1 || 5 || 1 || 5 || || 5 || || || || {{Red|40}}
 
|-
 
|-
 
! Tóthová Gabriela
 
! Tóthová Gabriela
| 5 || 1 || - || 1 || 4 || 1 || 5 ||0.5|| 1 || 0 || 2 || 1 || || 1 || 5 || 1 || || ||2.5|| 1 || 2 || || 34
+
| 1 || 0 ||4 || 1 || 2 || 1 ||3.5||0.5|| 2 || || 1 ||1.5|| 1 || || 1 || ||3.5|| || 3 || ||2.5|| || 25.5
 +
<!--
 +
|-
 +
! Šišková Patrícia
 +
| - || || - || || 4 || || - || || || || || || || || || || || || || || || || 4
 +
|-
 +
! Štefanisko Jozef
 +
| - || || 5 || || - || || - || || || || || || || || || || || || || || || || 0
 +
-->
 
|}
 
|}
  
Riadok 124: Riadok 71:
 
<!-- -->
 
<!-- -->
  
{{Podnadpis1|1. ndú z 18.9.2012}}
+
{{Podnadpis1|1. ndú z 15.2.2013}}
* pomocou '''MoveTo''' a '''LineTo''' nakresliť štvorcovú špirálu zloženú z '''N''' čiar
+
* môžete predpokladať, že '''N''' je deliteľné 4
+
* nepoužívajte príkaz '''if'''
+
  
{{Podnadpis1|2. ndú z 25.9.2012}}
+
* napíšte program, ktorý vytvorí binárny súbor z riadkov textového súboru '''studenti.txt''', tento súbor obsahuje riadky tvaru
* program vygeneruje napr. 10000 bodiek na náhodné pozície
+
{{Prog}}
* bodky zafarbí tak, aby v strede plochy vznikol modrý kríž a zvyšok plochy bol červený
+
meno;rocnik priemer
* program pred samotným bodkovaním nakreslí obrys kríža (pomocou čiar) a až potom spustí bodkovanie
+
|}
 +
* treba to prečítať do záznamu:
 +
{{Prog}}
 +
type
 +
  TStudent = record
 +
    Meno: string[15];
 +
    Rocnik: Byte;
 +
    Priemer: Real;
 +
  end;
 +
|}
 +
* každý prečítaný záznam sa zapíše do súboru
 +
:* v hex-editore sa pozrite, ako je to uložené, koľko bajtov zaberá jeden záznam (SizeOf(TStudent))
 +
* NDÚ odovzdávať len text projektu (napr. project1.lpr)
  
{{Podnadpis1|3. ndú z 2.10.2012}}
 
* hviezdičkovanie plochy '''N'''x'''N''' v konzolovom režime (kde dá funkcia '''True''' vypísať '*' inak '.')
 
* urobiť logickú funkciu, ktorá bude dávať '''True''' pre políčka v štvorcovej sieti, pre ktoré:
 
** sú na obvode
 
** sú na nejakej uhlopriečke
 
** sú v hornej alebo spodnej štvrťke, ktoré sú tvorené uhlopriečkami
 
  
{{Podnadpis1|4. ndú z 9.10.2012}}
+
{{Podnadpis1|2. ndú z 22.2.2013}}
* zistiť počet slov v nejakom dlhom textovom súbore
+
** slová = postupnosti len písmen
+
** oddeľovače sú všetky ostatné znaky
+
  
{{Podnadpis1|5. ndú z 16.10.2012}}
+
* napíšte procedúru '''VyhodDuplikaty''', ktorá vyhodí zo spájaného zoznamu všetky ďalšie výskyty tej iste hodnoty
* na kliknutie sa prečíta bitmapa do globálnej premennej, zapamätá sa '''X''', '''Y''' a naštartuje časovač
+
* Timer: zmaže plochu, vykreslí všetky bitmapy na ich príslušné ('''X''', '''Y''') a posunie '''X''' o 10, ak bitmapa vypadne z plochy,  uvolní bitmapu
+
* každé kliknutie vyrobí novú bitmapu (aj s jej  '''X''', '''Y''') a potom tieto bitmapy utekajú paralelne
+
** každá sa na okraji zruší
+
** hint: použiť globálne polia bitmáp a momentálnych súradníc '''X''', '''Y'''
+
 
+
{{Podnadpis1|6. ndú z 23.10.2012}}
+
* pomocou '''Pixels[X, Y]''' otočit bitmapu (napr. rozmeru 256x256) o ľubovoľný zadaný uhol
+
 
+
{{Podnadpis1|7. ndú z 30.10.2012}}
+
* vygenerovať vedľa seba husto veľa robotov otočených smerom nahor
+
* potom sa naraz všetky rozbehnú malým krokom nahor (pomocou '''Timer''')
+
* postupne niektoré z nich zastanú tak, že vytvoria sínusovku
+
 
+
{{Podnadpis1|8. ndú z 6.11.2012}}
+
* krátenie zlomkov
+
 
+
{{Podnadpis1|9. ndú z 13.11.2012}}
+
* pomocou dynamických polí budeme reprezentovať množiny tak, že v týchto poliach budú všetky prvky zoradené vzostupne a žiaden sa nevyskytne viackrát; naprogramujte dve funkcie, ktoré vyrobia prienik a zjednotenie takýchto množín:
+
 
{{Prog}}
 
{{Prog}}
  type
+
  procedure VyhodDuplikaty(Z: PVrchol);
  TPole = array of Integer;
+
&nbsp;
+
function Prienik(A, B: array of Integer): TPole;
+
function Zjednotenie(A, B: array of Integer): TPole;
+
 
|}
 
|}
* napr. by malo fungovať
+
* napr. zo zoznamu
 
{{Prog}}
 
{{Prog}}
  Prienik([100, 200, 300], [200, 300, 400])  -->   ''vyrobí množinu'' {200, 300}
+
  1 -> 2 -> 3 -> 2 -> 4 -> 1 -> 2 -> 5 ->
  Zjednotenie([100, 200, 300], [200, 300, 400])  -->   ''vyrobí množinu'' {100, 200, 300, 400}
+
|}
 +
* spraví zoznam
 +
{{Prog}}
 +
  1 -> 2 -> 3 -> 4 -> 5 ->  
 
|}
 
|}
  
{{Podnadpis1|10. ndú z 20.11.2012 - 2 úlohy}}
+
 
* pomocou zásobníka znakov a jednej premennej program zistí, či vstupný reťazec obsahuje rovnaký počet 'a' a 'b' - program vypíše 'ano' alebo 'nie':
+
{{Podnadpis1|3. ndú z 1.3.2013}}
 +
 
 +
* Vytvorte triedu '''TSlovnik''', ktorá do spájaného zoznamu načíta zo súboru (napr. '''slovnik.txt''') zoznam dvojíc slov (slovenské anglické), napr.
 
{{Prog}}
 
{{Prog}}
  type
+
  pes dog
  TStack = class
+
  macka cat
    Pole: string;
+
  ...
    procedure Push(P: Char);
+
    function Pop: Char;
+
    function Top: Char;
+
    function Empty: Boolean;
+
  end;
+
  &nbsp;
+
  var
+
  S: TStack;
+
  Z: Char;
+
 
|}
 
|}
* napr. pre vstup
+
* trieda '''TSlovnik''' je spájaným zoznamom, ktorý bude mať vrcholy utriedené podľa anglických slovíčok, napr.  
 
{{Prog}}
 
{{Prog}}
  aabbbbabaa  -->  vypíše ano
+
  TVrchol = class
  abcab  -->  vypíše nie
+
  Slov, Angl: string;
 +
  Next: TVrchol;
 +
  ...
 +
end;
 +
&nbsp;
 +
TSlovnik = class
 +
  Z: Tvrchol;
 +
  constructor Create(Subor: string);
 +
  procedure Vloz(S, A: string);    ''// vloží do zoznamu na správne miesto ďalšiu dvojicu slov''
 +
  ...
 +
  end;
 
|}
 
|}
  
  
* navrhnúť '''Turingov stroj''', ktorý pre vstup zložený z (N+1) jednotiek vyrobí číslo N v dvojkovej sústave, napr.
+
{{Podnadpis1|4. ndú z 8.3.2013}}
{{Prog}}
+
 
111111111111  -->  akceptuje a vyrobí  1011
+
* vygenerovať a nakresliť náhodný strom s číslami vo vrcholoch od 1 do 20
  1110  -->  neakceptuje
+
:* klikanie myšou na ľubovoľný vrchol zvýši číslo v tomto vrchole o 1 (a prekreslí vrchol alebo celý strom)
|}
+
 
 +
 
 +
{{Podnadpis1|5. ndú z 15.3.2013}}
 +
 
 +
* konštruktor (alebo funkcia, ktorá vráti koreň stromu) pre aritmetický strom, ktorý ako parameter dostáva '''string''' so zápisom aritmetického stromu v prefixe oddelený medzerami a vytvorí tento strom
 +
  '+ * 4 5 - 712 9'
 +
: zrejme budeme musieť použiť rekurziu
 +
: čísla môžu byť aj viacciferné
 +
: napr.
 +
Astrom := Vytvor('+ * 4 5 - 7 9');
  
 
<!-- -->
 
<!-- -->
Riadok 215: Riadok 154:
  
 
----
 
----
<div align="right"><small>Aktualizované: 28.11.2012</small></div>
+
<div align="right"><small>Aktualizované: 20.2.2013</small></div>

Aktuálna revízia z 11:15, 22. máj 2013

cvičenia pre 1iai2



bodovanie

1 d1 2 d2 3 d3 4 d4 5 d5 6 d6 7 d7 8 d8 9 d9 10 d10 11 d11
Belica Martin 2 1 4.5 1 5 1 4.5 1 3 4 1 3.5 2 2 5 0.5 5 40
Bucha Samuel 0.5 0.5 0.5 4 2 2 - 2 2 1.5 1 0.5 15.5
Dobiáš Dominik 2 1 5 1 5 1 5 1 5 1 4 - 2 3.5 3 2 40
Hanzlík Roman 5 - 1 1 2 1 2 - - 3 0.5 15.5
Hervay Ákos - - 3.5 2.5 3.5 0.5 3 - 0.5 2 1 4.5 4.5 25.5
Jankovič Erik - 1 4.5 1 - 0.5 1 1 3.5 - 5 1 4.5 1 5 4.5 2 1 36.5
Knechta Dominik 3 4.5 4 0.5 - 1 2 2 1.5 2 2 21
Kováč Matúš 5 4.9 1 1 3 1 2.5 2 4.5 3 5 24.9
Krampl Werner 4.5 1 5 5 4.5 1 2 0.5 2 1 3.5 1 5 1 5 1 5 5 40
Sedláček Jakub - 4.5 2.5 2 2 - - 2 - 3 1.5 17.5
Sedláček Peter 4.5 4.5 4.5 3.5 2.5 - - 5 - 5 1.5 31
Sklenčár Viktor 5 1 2.5 1 3.5 1 5 1 3 1 1 3 1 2 1 5 1 5 2 40
Šiškovič Joachim - 4.5 1 - 5 3.5 3 4.5 2 1 4 3 5 35.5
Šuník Martin - 1 5 1 - 1 4.5 1 5 5 1 5 1 5 1 5 5 40
Tóthová Gabriela 1 0 4 1 2 1 3.5 0.5 2 1 1.5 1 1 3.5 3 2.5 25.5


predchádzajúce nepovinné domáce úlohy

1. ndú z 15.2.2013


  • napíšte program, ktorý vytvorí binárny súbor z riadkov textového súboru studenti.txt, tento súbor obsahuje riadky tvaru
meno;rocnik priemer
  • treba to prečítať do záznamu:
type
  TStudent = record
    Meno: string[15];
    Rocnik: Byte;
    Priemer: Real;
  end;
  • každý prečítaný záznam sa zapíše do súboru
  • v hex-editore sa pozrite, ako je to uložené, koľko bajtov zaberá jeden záznam (SizeOf(TStudent))
  • NDÚ odovzdávať len text projektu (napr. project1.lpr)



2. ndú z 22.2.2013


  • napíšte procedúru VyhodDuplikaty, ktorá vyhodí zo spájaného zoznamu všetky ďalšie výskyty tej iste hodnoty
procedure VyhodDuplikaty(Z: PVrchol);
  • napr. zo zoznamu
1 -> 2 -> 3 -> 2 -> 4 -> 1 -> 2 -> 5 -> 
  • spraví zoznam
1 -> 2 -> 3 -> 4 -> 5 -> 



3. ndú z 1.3.2013


  • Vytvorte triedu TSlovnik, ktorá do spájaného zoznamu načíta zo súboru (napr. slovnik.txt) zoznam dvojíc slov (slovenské anglické), napr.
pes dog
macka cat
... 
  • trieda TSlovnik je spájaným zoznamom, ktorý bude mať vrcholy utriedené podľa anglických slovíčok, napr.
TVrchol = class
  Slov, Angl: string;
  Next: TVrchol;
  ...
end;
 
TSlovnik = class
  Z: Tvrchol;
  constructor Create(Subor: string);
  procedure Vloz(S, A: string);     // vloží do zoznamu na správne miesto ďalšiu dvojicu slov
  ...
end;



4. ndú z 8.3.2013


  • vygenerovať a nakresliť náhodný strom s číslami vo vrcholoch od 1 do 20
  • klikanie myšou na ľubovoľný vrchol zvýši číslo v tomto vrchole o 1 (a prekreslí vrchol alebo celý strom)



5. ndú z 15.3.2013


  • konštruktor (alebo funkcia, ktorá vráti koreň stromu) pre aritmetický strom, ktorý ako parameter dostáva string so zápisom aritmetického stromu v prefixe oddelený medzerami a vytvorí tento strom
'+ * 4 5 - 712 9'
zrejme budeme musieť použiť rekurziu
čísla môžu byť aj viacciferné
napr.
Astrom := Vytvor('+ * 4 5 - 7 9');




Aktualizované: 20.2.2013