Vývojové prostredie Borland C.


Obsah tém. 

  1. Úvod- začíname inštaláciou
  2. Prvý program
  3. Ladenie programov - Debug
  4. Príklady a algoritmy.
  5. Cvičenia C++
 

Úvod - začíname inštaláciou

    Programovanie v prostredí Borland  C++  v. 3.1 vyžaduje aby ste mali

  • počítač minimálne úrovne I 386 a viac, ale postačí aj hociaký novší minimálne s operačným systémom WINDOWS 98
  • a inštalačné CD s vývojovým prostredím Borland C++

      Inštalácia vývojového prostredia  

       Predtým ako začnete inštalovať  pozrite aký názov má  MECHANIKA CD ROM a aký názov bude mať MECHANIKA CIEĽOVÉHO UMIESTNENIA aplikácie vývojového prostredia C jazyka. Toto si zapište, pretože inštalácia verzie 3.1 je ešte DOS-ovská. teraz môže začať inštalácia.

  1. Vložíte inštalačné CD do mechaniky a navoľte podadresár BCPP31. V ňom vyhľadáte program install.exe ktorý spustíte. Program môžete spustiť aj v štartovacom riadku WINDOWS 98, cez voľbu ŠTART/ SPUSTIŤ, kde  v okne do položky OTVORIŤ vpíšete celý názov programu aj s cestou, alebo ho vyhľadáte pomocou voľby PREHĽADÁVAŤ.

  2. Program inštalácie sa spustí, a v prvom okne, ktorý vám ponúkne, dovolí sa vám rozhodnúť či sa inštalácia príkazom ESC ukončí, alebo sa bude pokračovať  po stlačení  ENTER - Continue
  3. Za tým vás požiada o určenie  názvu mechaniky zdrojových súborov inštalácie: Enter the SOURCE drive to use:  ,kde napíšte  napr. a za tým Enter (ak mechanika CD je F -alebo iné písmeno podľa vášho počítača).
  4. Za tým vás požiada, aby ate uviedli cestu do podadresára v ktorom sa inštalačné súbory nachádzajú:  Enter the SOURCE Path: , kde dajte \BCPP31 
  5. Nasledovné okno vás požiada skontrolovať viacero údajov uvedených v tabuľke, v ktorej navolte kurzorom riadok obsahujúci údaj Directories:  [ E: \BORLANDC ] , kam môžete zapísať umiestnenie vývojového prostredia. 
  6. V tej istej tabuľke na konci nakoniec zvolte Start instalation a počkajte kým sa aplikácia nainštaluje. 
  7. Ako poslednú akciu urobte zmenu v súboroch: 
    • autoexec.bat cestu v položke PATH:   PATH= C:\WINDOWS;E:\BORLANDC\BIN  (ak predtým bolo PATH=  C:\WINDOWS ,t.j. nová cesta sa oddeľuje bodkočiarkou ) ,  
    • config.sys položku FILES: , do ktorého na nový riadok dopíšete  FILES=20  , kde udaj 20 je minimálna hodnota  (ak je tam viac nechajte viac!)

       Túto poslednú zmenu môžete urobiť pomocou príkazu msconfig v štartovacom riadku WINDOWS 98,  ktorý otvorí editačné formuláre. V okne uvidíte samostatné záložkami na ktorých vidno názvy autoexec.bat a config.sys. Keď kliknete na jeden z nich uvidíte ovládacie tlačítka Posunúť nahor, Posunúť nadol, Upraviť a Nový. Použite ich podľa potreby. 

Aby sa všetky zmeny uplatnili urobte Reštart počítača a môžete začať programovať. 

       Po prvom Reštarte WINDOWS vytvorí pracovné okno pre zoskupenie programov okolo aplikacie Borlan C++, ale až po tom, keď otvorí okno so žiados´tou a dostane od vas povolenie. Od tejto chvíle sa nachádza aplikácia Borland C++ medzi ostatnými programami v zozname programov. V ponuke existujú dve verzie štartovania prostredia C++ 

  • BCW určený pre prostredie WINDOWS verziu 3.0 a 3.1 (tá bude robiť problémy hlavne pri ľadení)
  • Borland C++ pre prostredie DOS ( toto odporúčam pri tejto verzii aj pod WINDOWS 98 )

 

Návrat na začiatok

Prvý program

    Naprv otestujete či sa rozbehne vývojová aplikácia v prostredí WIN98. 

  • Navolte ŠTART/ PROGRAMY/ Borland C++ 3.1Borland C++ . Rozbehne sa klasický program pre prostredie DOS,  ktorý sa zobrazí samostatne na celej ploche obrazovky. Do WINDOWS sa môžete prepnúť stlačením ALT+TAB. Na nasledovnom obrázku vidíte ten istý program, ale spustený v okne WINDOWS. Takéto použitie pracovného priestoru má zmysel jedine pri veľkej obrazovke. V hlavičke okna vidíte nastavovací panel okna, ktorý sa dá zrušiť pomocou tlačítka s rukou držiacou papier. Po stlačení ďalej navolíte Obrazovka / Okno / Zobraziť panel s nástrojmi, kde zrušíte oznečenie voľby Zobraziť panel s nástrojmi. Okno sa Vám potom bude otvárať v tvare, ako to vidíte na nasledovných obrázkoch, jedine s titulným riadkom v ktorom svieti názov Borland C++ for DOS
 
 

 
 

Ak pre DOS program chcete vytvoriť ikonku na čelnom paneli, ktorá vám otvorí samostatné okno, tak ako ho teraz vidíte na obrázku, urobíte to takto:

  •  Najprv v klasickom štartovacom menu WINDOWS vytvoríte nový odkaz, ktorý prenesiete na desktop. Postup:  
    • Otvoríte menu klasickým spôsobom cez  Štart / Programy / Borland C++ 3.1 / Borland C++, kde 
    • pravým tlačítkom otvoríte roletové menu v ktorom zvolíte Vytvoriť odkaz. V menu pribudne duplikát volania Borland C++, ktorý teraz
    •  uchytíte ľavým tlačítkom myšky a potiahnutím ho presuniete na plochu (desktop) 

     

  • Teraz kliknete pravým tlačítkom mýšky na vytvorenú ikonku, otvorí sa vám roletové menu, kde na konci uvidíte Vlastnosti. Po ich poklepaní sa otvorí konfiguračné okno v ktorom môžete zmeniť režim Okna vo Windows, resp. DOS prostredia na celú obrazovku, ďalej typ písma a počet riadkov otváraného okna. (vid. nasl.obr.) 

    

    Teraz vytvoríme prvý pokusný program: 

    Príkazom 

  • File / New (Súbor/Nový) otvoríte prázdne okno s názvom NONAMExx.CPP, kde za xx vám aplikácia vývojového prostredia automaticky doplňuje poradové čísla, aby vznikali nové súbory. Tento názov môžete okamžite premenovať nasledovným príkazom 
  • File / Save as ... (Ulož ako...). Príkaz uloží aktuálny súnbor pod novým názvom. Odteraz, ak urobíte zmenu v zdrojovom texte, už stačí použiť nasledovný príkaz  
  • File / Save (Ulož), ktorý uloží otvorený súbor s aktuálnym názvom. Nakoľko programové prostredie umožnuje, aby ste mali otvorených viac zdrojových  súborov, pričom každé bude mať svoje vlastné okno, potom ak ich chcete uložiť naraz, máte na to nasledovný hromadný príkaz 
  • File / Save all... (Ulož všetky...)  ktorý uloží naraz súbory vo všetkých otvorených oknách. 

    V menu File sa ešte nachádzajú tieto príkazy:

  • DOS Shell - ktorý vám sprostredkuje vstup do DOS-ovského riadkového režimu (resp. v okne sa vám otvorí DOS prostredie), 
  • Print (Tlač)- ktorý vytlačí na tlačiarni aktuálny obsah textu aktuálneho pracovného okna. 
  • Quit - ukončí celý program

    V prípade že ste uzavreli súbor a chcete ho opakovane otvoriť použijete príkaz: 

  • File / Open (Súbor / Otvor) - ktorý vám pomôže súbor vyhľadať, a konečne 
  • File / Change dir ... - (Súbor / Zmeň adresár ...) slúži na nastavenie katuálneho pracovného adresára. Ak ho máte správne nastavený, potom už nemusíte zakaždým udávať celú cestu k miestu uloženia zdrojového textu programu. 

    Základné pravidlá s písaním zdrojového textu:

  1. Program pracuje v DOS režime, v ktorom  sa ihneď môžete stretnúť s prvým problémom, ako napísať znaky En-glish klávesnice t.j. znaky ako napr # < > . Nakoľko je navolený režim fontov Slovenskej klávesnice a vypisujú sa vám mäkčeňaté znaky, potrebujete prepnúť do režimu  English klávesnice. Na prepínanie medzi režimami použijete "trojhmat" kláves  CTRL+ ALT+ F1  CTRL+ ALT+ F2  t.j. En a Sk. Postup je nasledovný:  stlačíte CTRL a ALT  podržíte a dotlačíte F1 resp. F2 podľa potreby. 

  2. Pri písaní sa vyskytne potreba preniesť označený blok textu na iné miesto, alebo skopírovať duplikát na iné miesto (do iného okna napr.). Tu pomôže ak prenesiete kurzor myškou na horný ľavý bod textu, ktorý chcete kopírovať, stlačíte ľavé tlačítko myšky a pri jeho stálom držaní potiahnete cez text do jeho pravého spodného rohu.  Označený blok sa vyfarbí inou farbou. Teraz stlačíte Ctrl+ Insert - blok sa skopíruje do klipboardu (pomocná pamäť ). Presuniete myšku na nové miesto a kliknutím prenesiete kurzor na novú pozíciu. Prepis textu z klipboardu na nové miesto urobíte príkazom Shift+Insert

  3. Ak označený blok chcete preniesť bezo zvyšku z miesta na miesto Shift+Delete blok odstráni a vloží do klipboardu. 

  4. Občas sa môžete pomýliť a budete chcieť vrátiť posledné kroky do pôvodného stavu. Tu poslúži  Alt + Bkspc

          Pri pogramovaní často potrebujete pomoc, na to slúži integrovaný Help ktorý vyvoláte buď cez MENU alebo použitím  F1 resp. 2 x stlačíte  F1. Ak potrebujete pomoc so syntaxou príkazov jazyka C, využite schopnosť kontextového Help-u. Rrobíte to takto: Napíšte do zdrojového textu identifikátor prvku jazyka ktorý hľadáte (trénujte pamäť), postavte kurzor pod dané slovo a vyvolajte Help príkazom Ctrl + F1. Zobrazí sa okno s popisom prvku. Na jeho konci zvyčajne nájdete   zoznam podobných resp. súvisiacich prvkov s tým, ktorý ste do textu napísali. Úplne na konci býva odkaz na vzorový príklad v ktorom je daný prvok použitý. Okná  Help-u v sebe obsahuje žltou farbou zvýraznené kľúčové slová. Ich poklepaním sa vnoríte do ďaľších stránok Helpu, ktoré tému ďalej doplňujú. 

Takto vyzbrojený môžete začať. Pomocou File / New otvoríte pracovné okno a doň vpíšte nasledovný program:

 
 

 

     Pomocou  File / Save as ... môžete zmeniť názov. Toto vlastne ani nie je program je to "zárodočná šupina" programu, ktorý obsahuje len hlavičky bez obsahu.  Skúste Preklad programu takto: otvoríte menu Compile Compile (resp. alternatívne Alt+F9). Ak máte program bez chýb očakávajte nasledovný výsledok vid.obr.:

 
 

 

    V tomto prípade zapísaný program je úplne prázdny bez jediného príkazu. Má však všetky náležitosti, ktoré jeden program potrebuje mať. Hlavná štartovacia funkcia sa volá main. Slovo void  znamená, že funkcia nebude vracať žiadnu odpoveď a ani v parametre žiadne  nepoužije.   Kompilátor - t.j. prekladač zdrojového textu do "relatívnych"  modulov (typu .obj ) - zahlási Success čo znamená Úspech Toto je prvý krok potrebný na vytvorenie funkčného programu. Relatívne moduly typu .obj sú len vstupnými súboromi pre Linker - t.j. spojovač - ktorý relatívne moduly pospája do jednoho celku, v relatívnych moduloch nastaví absolutné adresy podľa toho, ako ich poukladá jeden za druhým, a nastaví vzájomné volania modulov (t.j. adresovania funkcií a vzájomne poskytovaných premenných ) už s absolutnými adresami. Tieto vzájomné volania sa nazývajú krížové referencie - a je to podobné, ako keď nitkami spájate dva kúsky látky, lenže tu je tých kúskov oveľa viac a skôr by sme si ich vedeli predstaviť ako priestorový lampion než plochú látku.  

Nasledovný krok je už len Spustenie programu Run / Run (resp. alternatívne  Ctrl + F9 ). Príkaz Run je uspôsobený tak, že ak predtým ste nevykonali kompiláciu, urobí to automaticky za vás. Spustí všetky operácie spojené s vytvorením "runtime modulu" t.j. konečnej verzie tzv. .exe programu. Ak ale už taký súbor bol vytvorený, potom ho spustí. Spustiť program znamená, že jeho binárnu formu uloženú v súbore  <názov programu>.exe skpíruje do operačnej pamäti a odovzdá riadenie inštrukcii na štartovacom bode programu. Inak povedané odovzdať riadenie štartovaciemu bodu znamená, že operečný systém  vloží do  IP registra (Instrukcion Pointer - ukazateľ na adresu inštrukcie , ktorá sa ide práve vykonať) absolutnú adresu prvej inštrukcie programu práve skopírovaného do OP, a ktorá je v programe nastavená ako  štartovacia adresa (jednoducho prvú v poradí). 

Poznámka:  Programátori v assambleri tento bod zvykli udávať za koncovou značkou END zdrojového textu písaného v assambleri. Tu túto úlohu uskutoční kompilátor, ktorý za štartovací bod považuje prvú inštrukciu modulu patriacej funkcii  main.

 
 

 

 

    Programátor resp. skôr PROJEKTANT INFORMAČNÝCH TECHNOLÓGIÍ  to nemá nikdy tak ľahké. Aj keď sa vám podarí odstrániť syntatktické chyby a kompilácia skončí Succes , ešte to neznamená výhru. Umenie programovať nespočíva v mechanickom kódovaní do príkazov jazyka, ale vo vymýšlaní algoritmov a metód. Sú to práve chybné algoritmy, ktoré sú najväčším problémom programátora- projektanta . Metódam odstranovania algoritmických chýb budeme sa venovať v častii Ladenie programu

Návrat na začiatok

Ladenie programov - Debug

    V živote programátora sú dva hraničné stavy. Žiaden program a Program tesne pred dokončením. Stav medzitým sa nazýva - vypĺňanie času ladením programu. Toto je Never ending story - (nikdy nekončiaci príbeh). 80% prác na tvorbe programu má programátor hotových za 20% času. Zvyšných 80% sa program dokončuje. Preto ak zadávateľ chce mať ako taký výsledný produkt, musí tento program v nestráženej chvíli progranátoroviu spod rúk  uchmatnúť. Nevadí, že program nie je dokončený - nájdené chyby sa aj tak odstránia v nasledovnej "vylepšenej" verzii programu. Tak to robili chlapci od MICROSOFTu a pozrite sa ako je firma úspešná.

Príčina chýb v programe spočíva hlavne v tom, 

  1. že programátor   si v duchu myslí, že program robí to, čo programátor chce, ale program robí niečo iné
  2. že program sice robí to čo programátor chce, ale pri tejto činnosti omylom poruší obsah práve nepoužívaných premenných s odloženými hodnotami iného podprogramu.  

Jediným spôsobom, ako odhaliť nezrovnalosti v programe je metóda postupného odľaďovania modulov sekvencií programu a ubezpečenia sa že modul pracuje nezávisle od ostatných programov ktoré nezasahujú do jeho integrity. Do programu sa zaradia  hlásne body v ktorých program vypíše medzistav hodnôt premenných. Program môžeme krokovať po riadkoch zdrojového textu. Po vykonaní riadku obsahujúceho príkazy, skontrolujeme stav premenných. Často tak odhalíme banálne chyby!

Aby sme mohli program ladiť musíme si nastaviť vývojové prostredie. 

Upravenie obrazovky vývojového prostredia pre potreby ladenia. 

    V menu programu C++ otvorte v položke menu Window / Output a  tak isto Window/ Watch špeciálne pracovné okná. Okná sa v tejto chvíli prekrývajú, preto ich môžeme rozmiestniť ako dlaždíce príkazom Window / Tile. Otvorené dve dve pracovné okná spolu s oknom zdrojového textu vytvárajú trojicu pracovných okien pomocou ktorých program odľadíme. Okno Output predstavuje obrazovku cez ktorú s nami program komunikuje a okno Watch vypisuje výrazy s premennými ktoré chceme monitorovať. V zdrojovom texte zase počas krokovania programu uvidíme vyznačený riadok s príkazmi ktoré sa v ďaľšom kroku budú vykonávať. Ak sme mali otvorené len spomenuté tri okná uvidíme nasledovné prostredie:

 
 

 


Okno Watch - Sleduj  je zatiaľ prázdne. Hocikedy, aj počas krokovania programu, môžeme do tohto okna zadefinovať premenné, ktoré chceme sledovať.  Prepneme sa do okna so zdrojovým textom programu (najjednoduchšie je tam kliknúť myškou) a postavíme kurzor pod
názov premennej ktorú chceme v okne Watch sledovať. V menu navolíte Debug / Watches / Add wattch... (Pridaj sledovanú premennú...), alebo jednoducho stlačíte Ctrl + F7

 
 

 

Otvorí sa vám pracovné okno Watch Expression , 

ktoré žiada,  aby ste udali názov premennej, alebo výraz používajúci premennú, ktorého obsah chcete sledovať. V prípade že ste kurzor správne umiestnili názov premennej uvidíte vpísaný do údajového poľa a stačí potvrdiť OK. V tej chvíli sa názov premennej objaví v okne Watch.  Urobte to pre všetky pemenné, ktoré chcete sledovať a môžete začať Ladenie. 

Postup krokovania programu pri ladení. 

     Na ladenie programu najlepšie poslúži metóda krokovania programu. V tomto režime sa program vykonáva po riadkoch, tak ako je  zapísaný v zdrojovom texte. Ak na jednom riadku máte súčasne viac príkazov, všetky sa vykonajú v jednom kroku. Ak tieto príkazy chcete vykonať postupne, umiestnite kažý na samostatný riadok. 

  • Pomocou F2 zmeny v programe okamžite zapíšte do súboru - neviete či chyba programu nezhodí celý operačný systém, a vtedy by ste prišli o všetky zmeny v zdrojovom texte.
  • Program skompilujte príkazom Compile / Make  alebo len krátko F9
  • Krok programu, ktorý vykoná jeden riadok príkazu vyvoláte príkazom Run / Step ower alebo krátko  F8.

Pri krokovaní programu zobrazuje sa v zdrojovom texte programu v riadku, ktorý sa má práve vykonať,  svetlozelený prúžok.  Detailné krokovanie funkcií sa pri tlační F8 preskakuje. Aby sa predsa len krokovali aj funkcie, musí sa urobiť nasledovný krok príkazom F7, krokovanie programu sa vnorí do funkcie, a tam pokračujeme príkazmi F8. Po skončení programu svetlozelený prúžok zmizne. Opakované stlačenie F8 znova naštartuje beh krokovania programu od začiatku.

Štartovaný program často používa argumenty (t.j. parametre) zapisované v štartovacom riadku programu za názvom programu. V prostredí DOS je to miesto označené napr.: C:\>  a v prostredí WINDOWS tento riadok nájdete cez Štart / Spustiť, kde sa vám otvorí dialógové okno Spustenie s položkou Otvoriť. To je štartovací riadok. Pri ladení programu vo vývojovom prostredí, obsah parametrov zapíšeme pomocou v položky menu  Run / Arguments, kde sa otvorí dialógové okno  Program arguments s položkou Arguments

Zmeny zdrojového textu počas ladenia 

Do zdrojového textu programu môžete hocikedy urobiť zásah. Krokovanie sa preruší,  systém oznámi zmeny a  požiada o potvrdenie na prebudovanie  programu:  Source modified. Rebuild?  Po potvrdení sa program znova skompiluje a krokovanie pokračuje od začiatku. 

Stop adresy.  

V programe sa dajú nastaviť miesta "zastávok" - Break points. Program spustený pomocou Run/ Run  (resp.  Ctrl-F9) beží až kým nenarazí na koniec alebo na miesto programu ktoré má nastavený bod zastavenia. V tomto mieste zastavenia sa program ohlási a umožní sa nám rozhodnúť či pokračovať v rýchlom behu po nasledovný bod prerušenia, alebo krokovať po riadkoch. Stop adresu možete nastaviť ale aj zrušiť rovnakým postupom: 

  • V okne so zdrojovým textom programu najprv nájdete riadok kde chcete program zastaviť a umiestnite tam kurzor.  
  • Mista zastavenia označíte v menu Debug / Toggle brakpoint (Preklop bod zastavenia).

Ak miesto zastavenia bolo neaktívne teraz sa nastaví. Ak miesto bolo aktívne - zruší sa nastavenie. Toggle znamená preklopiť stav. 

 
 

 


V položke menu  Debug / Breakpoints nájdete tabuľku so zoznamom všetkých prerušovacích miest. Tu ich možete podľa potreby naraz zrušiť. 

Návrat na začiatok

Príklady a algoritmy

    Ak sme zvládli Prvý program, začneme budovať svoj programový svet, v ktorom sa nám objavia ďaľšie pojmy a vlastnosti programovacieho jazyka. Zatiaľ je náš program hluchý a slepý, jeho intekligencia je asi tak na úrovni vajcovej škrupiny, lebo v jeho vnútri sa nenachádza nič.  

Urobme teda niečo, aby sa nám program ozval a a dal o sebe vedieť. Stvorme umelú bytosť, ktorá sa bude volať ADAM. Otvoríme si text prvého programu a upravme si ho takto:

 
 
#include <stdio.h>
#include <conio.h>  

/* Náš prvý program medzi znakmi lomítko hviezdička a hviezdička lomítko
   má uložený text komentára na viacerích riadkoch. 
   Komentár ktorý začína v jednom riadku a končí na jeho konci može byť uvedený 
   dvomi lomítkami na začiatku. Komentáre kompilátor ignoruje - sú určené pre nás. 
 */

void main ( void )
{   
  clrscr();  // Vymaž obrazovku - clear screen  
  printf("\n\n\nTu ADAM. Zijem!\n\nAby som skoncil stlac lubovolnu klavesu.\n");   
             // printf - formatovaná tlač znaku na konzolu
             // \n vsunie do výpisu  nový riadok - znamená new line
  getch ();  // Čakanie na znak klávesnice

}

 

    Takto vytvorený program môže komunikovať so svojim okolím a jedna z foriem komunikácie je odovzdanie chybového stavu volajúcej procedúre. Funkcia main s predradeným void nevykonáva odpoveď. Po odstránení void musíme nastavovať odpoveď pomocou príkazu return. Napríklad:  return(0); 

 
 

#include <stdio.h>
#include <conio.h>  

/* Program vracajúci chybový stav. Stav 0 = bezchybné ukončenie programu.  
 */

main ( void )
{   
  clrscr();  // Vymaž obrazovku - clear screen  
  printf("\n\n\nTu ADAM. Zijem!\n\nAby som skoncil stlac lubovolnu klavesu.\n");   
             // printf - formatovaná tlač znaku na štandardný výstup
             // \n vsunie do výpisu  nový riadok - znamená new line
  getch ();  // Čakanie na znak klávesnice
  return(0); // Návratová hodnota 

}

/* praca s pointrami a retazcami priklad separujuci useky datumu
 */
  #include <string.h>
  #include <stdio.h>
  #include <stdlib.h>

  int main(void)
  {
     char input[20] = "15.6.2005";
     char *p;
     int den,mesiac,rok;

  /* do p pointer na zaciatok stringu v input
	strtok umiestni NULL pred token ak ho najde */
     p = strtok(input, ".");
     if (p)   printf("%s\n", p);
     den=atoi(p);    // nastav cislo dna

  /* pointer nastavi za predtym najdeny token a
	NULL umiestni pred nasledovny najdeny token  */
     p = strtok(NULL, ".");
     if (p)   printf("%s\n", p);
     mesiac=atoi(p);


  /* pointer nastavi za predtym najdeny token a
	NULL necha na mieste ak nanajde nasledovny token */
     p = strtok(NULL, ".");
     if (p)   printf("%s\n", p);
     rok=atoi(p);

     printf("Datum je %d/%d/%d:",den,mesiac,rok);
     return 0;
  }


 

Cvičenia C++

001.  002.  003.  004.  005.  006.  007.  008.  009.  010.
011.  012.  013.  014.  015.  016.  017.  018.  019.  020.
021.  022.  023.  024.  025.  026.  027.  028.  029.  030.
031.  032.  033.  034.  035.  036.  037.  038.  039.  040.
041.  042.  043.  044.  045.  046.  047.  048.  049.  050.
051.  052.  053.  054.  055.  056.  057.  058.  059.  060.
061.  062.  063.  064.  065.  066.  067.  068.  069.  070.
071.  072.  073.  074.  075.  076.  077.  078.  079.  080.
081.  082.  083.  084.  085.  086.  087.  088.  089.  090.
091.  092.  093.  094.  095.  096.  097.  098.  099.  100.
101.  102.  103.  104.  105.  106.  107.  108.  109.  110.
111.  112.  113.  114.  115.  116.  117.  118.  119.  120.
121.  122.  123.  124.  125.  126.  127.  128.  129.  130.
131.  132.  133.  134.  135.  136.  137.  138.  139.  140.
141.  142.  143.  144.  145.  146.  147.  148.  149.  150.
151.  152.  153.  154.  155.  156.  157.  158.  159.  160.
161.  162.  163. 
Návrat na začiatok