Vianoce v ITnetwork sú tu! Dobí si teraz kredity a získaj až 80 % extra kreditov na e-learningové kurzy ZADARMO. Zisti viac.
Hľadáme nové posily do ITnetwork tímu. Pozri sa na voľné pozície a pridaj sa k najagilnejšej firme na trhu - Viac informácií.

3. diel - Premenné a matematické operácie v Batch

Z minulého tutoriálu vieme okrem zmeny farbičiek vypisovať text. No áno, ale to nám skoro k ničomu nie je. Čo by to bolo za program, ak by stále len niečo vykladal? V tomto tutoriálu sa naučíme vytvárať premenné.

Premenné

Poďme sa zhodnúť na tom, čo je to premenná (programátori mi teraz iste odpustí zbytočné vysvetľovanie). Určite poznáte z matematiky premennou (napr. X), do ktorej sme si mohli uložiť nejakú hodnotu, najčastejšie číslo. Premenná je v informatike úplne to isté - je to miesto v pamäti počítača, kam si môžeme uložiť nejaké dáta (meno používateľa, aktuálny čas alebo polomer kruhu na výpočet jeho obsahu). Toto miesto má podľa typu premennej tiež vyhradenú určitú veľkosť, ktorú premenná nesmie presiahnuť.

Premenná má vždy nejaký dátový typ, môže to byť číslo, znak, text a podobne, záleží na tom, na čo ju chceme používať. Väčšinou musíme pred prácou s premennou túto premennú najskôr tzv. Deklarovať, či povedať jazyku ako sa bude volať. Jazyk ju v pamäti založia a až potom s ňou môžeme pracovať.

Program Vyhlasujúca premennú

Založte si nový program, ktorý sa bude volať vypis.bat. Vložíme do neho základnú štruktúru a titulok nastavíme na "Vypis premennej".

@echo off
title Vypis promenne

pause

Kód budeme teraz písať do medzery medzi title a pause. Premennú môžeme vytvoriť pomocou príkazu set. Pridajme nasledujúci kód.

set web=ITnetwork.cz
set autor=193

Dobrá, premennú by sme mali vytvorenú. Ak program spustíme, na prvý pohľad sa nič nebude diať. Chcelo by to niečo, kde premennú vypíšeme. Premennú možno vypísať pomocou, nám už známeho, príkazu echo - len pred a za názov premennej pridáme znak percenta. Pod riadok s nastavením premennej vložte tento riadok.

echo Zdroj informaci %web%, autor clanku %web%/portfolio/%autor%

Ak teraz program spustíte, vypíše nám odkaz na web Itnetwork a odkaz na moje portfólio.

Výpis premenné v Batch - Príkazový riadok a dávkové súbory

Ale pre užívateľov to stále nie je nič zaujímavé, stále vidí iba výstup. Poďme si vytvoriť nový program, ktorý bude spracovávať vstup od užívateľa.

Program Papagáj

Napíšeme program papagáj, ktorý bude dvakrát opakovať to, čo používateľ napísal. Založte si súbor s názvom papousek.bat a vložte do neho základnú štruktúru. Načítať vstup od užívateľa môžeme pomocou opäť pomocou príkazu set. Tentokrát k nemu ale pridáme prepínač / p. Za znamienko rovnosti môžeme vložiť nejaký text, ktorý sa zobrazí pri vstupe. Nie je to ale povinné.

Najprv sa užívateľovi, ako každý slušný papagáj, predstavíme a potom požiadame, aby niečo napísal.

echo Ahoj, jsem virtualni papousek Lora, rad opakuji!
set /p opakuj=Napis mi neco:
echo.

Dobrá, teraz máme v premennej načítanú hodnotu od užívateľa. Keďže vytvárame program, ktorý má opakovať, musíme tiež napísať nejaký výstup.

echo %opakuj%, %opakuj%!

Na koniec ešte vložíme príkaz pause so skrytým textom, aby si užívateľ mohol prezrieť výstup. Program uložíme a spustíme.

Papagáj v Batch - Príkazový riadok a dávkové súbory

Program Zdvojnásobovač

Vytvoríme program, ktorý si od užívateľa vytiahne číslo a vypíše mu jeho dvojnásobok. Počítanie v Batch prebieha opäť pomocou príkazu set, ale tentoraz s prepínačom / A. Založíme si nový súbor, ktorý pomenujeme dvojnasobek.bat a vložíme do neho základnú štruktúru. Potom si načítame číslo do premennej% cislo% a v premennej% vysledok% ho zdvojnásobíme. Nakoniec užívateľovi vypíšeme výsledok.

set /p cislo=Zadej cislo:
set /a vysledek=%cislo%*2
echo Dvojnasobek je %vysledek%

Program si uložte a skúste ho spustiť. Program je tiež "blbuvzdorný". Skúste si do vstupu napísať nejaké slovo alebo písmeno - program vypíše nulu :-) .

Zdvojnásobovač v Batch - Príkazový riadok a dávkové súbory

Jednoduchá kalkulačka

Takže počítať už vieme. Čo keby sme si vytvorili jednoduchú kalkulačku v Batch? Bude naozaj veľmi jednoduchá. Na vstupe dostaneme dve čísla, program potom vypíše výsledky ich súčtu, rozdielu, súčinu a podielu. Založte si nový súbor s názvom kalkulacka.bat, do ktorého vložíte základnú štruktúru.

Najprv užívateľovi predstavíme aplikáciu, potom si vyžiadame obe čísla.

echo Vitej v kalkulacce. Kdyz mi zadas 2 cisla, spocitam ti spoustu věci!
set /p prvni=Zadej prvni cislo:
set /p druhe=Zadej druhe cislo:
echo.
echo Dekuji za zadani cisel. :-)

Ďalej si vytvoríme premenné, do ktorých budeme ukladať výsledky jednotlivých operácií.

set /a soucet=%prvni%+%druhe%
set /a rozdil=%prvni%-%druhe%
set /a soucin=%prvni%*%druhe%
set /a podil =%prvni%/%druhe%

Výborne, teraz máme výsledky operácií uložené v premenných. Nesmieme zabudnúť na tú najdôležitejšiu vec - vypísať je užívateľovi.

echo.
echo %prvni%+%druhe% je %soucet%
echo %prvni%-%druhe% je %rozdil%
echo %prvni%*%druhe% je %soucin%
echo %prvni%/%druhe% je %podil%

Systémové premenné

Systém nám už pripravil nejaké premenné. Väčšinou obsahujú informácie o počítači, systéme a aktuálnym užívateľmi. Ich zoznam môžeme nájsť, keď do príkazového riadka zadáme príkaz "set". Medzi najzaujímavejšie premenné patrí napríklad:

popis premenná Príklad výstupu
Aktuálny dátum % Date% út 17. 02. 2015
Aktuálny čas % Time% 14: 28: 12,53
Užívateľské meno aktuálneho používateľa % Username% daniel
Meno počítača % Computername% MujPc
Náhodné číslo od 0 do 32 767 % Random% 7030
zložka Windows % Windir% C: \ WINDOWS
zložka užívateľa % Userprofile% C: \ Users \ Daniel
AppData % Appdata% C: \ Users \ Daniel \ AppData \ Roaming
program Files % Programfiles% C: \ Program Files
domovský oddiel % Homedrive% C:
architektúra procesora % Processor_archi­tecture% AMD64
Ako som už spomenul, tieto premenné nám pripravuje systém. Keďže je príkazový riadok prepojený s operačným systémom, je možné zmeniť predvolené hodnoty týchto premenných, prípadne si pridať vlastné globálne premenné. Skúste si otvoriť Ovládací Panely> Systém> (ľavé menu) Rozšírené nastavenie systému> (záložka) Rozšírené> (tlačidlo dole) Premenné prostredia. Tu je možné premenné upraviť, vymazať, prípadne si vytvoriť vlastné.
Premenné prostredia v Batch - Príkazový riadok a dávkové súbory

V nasledujúcom cvičení, Riešené úlohy k 3. lekcii Batch, si precvičíme nadobudnuté skúsenosti z predchádzajúcich lekcií.


 

Mal si s čímkoľvek problém? Stiahni si vzorovú aplikáciu nižšie a porovnaj ju so svojím projektom, chybu tak ľahko nájdeš.

Stiahnuť

Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami

Stiahnuté 425x (999 B)
Aplikácia je vrátane zdrojových kódov v jazyku Batch

 

Predchádzajúci článok
Editor a prvý program v Batch + cvičenie
Všetky články v sekcii
Príkazový riadok a dávkové súbory
Preskočiť článok
(neodporúčame)
Riešené úlohy k 3. lekcii Batch
Článok pre vás napísal Neaktivní uživatel
Avatar
Užívateľské hodnotenie:
2 hlasov
Tento uživatelský účet již není aktivní na základě žádosti jeho majitele.
Aktivity