ÚVOD DO INFORMATIKY (c) 2008 Doc.Ing. Martin Šperka, PhD. (Materiál neprešiel odbornou ani jazykovou korekciou a je určený pre študentov Fakulty informatiky Bratislavskej vysokej školy práva.)
8. KALKULÁCIE A TVORBA TABULIEK 8.1 VÝPOČTY A KALKULÁCIE POMOCOU IKT Slovo počítač znamená nástroj na počítanie, čo bola jeho pôvodná funkcia. Aj keď dnes väčšina ľudí používa počítače na iné účely ako výpočty, tieto sa nestratili. Prezeranie fotografií v JPEG, prehrávanie hudby pomocou prehrávača MP3 alebo videa v MPEG 2 alebo 4 je spojené s obrovským množstvom výpočtov, ktoré sa vykonávajú podľa algoritmov, vyžadujúcih si vedomosti z vyššej matematiky. Aj pri práci s textom si treba uvedomiť, že každý znak je reprezentovaný polynomiaálnymi krivkami, ktoré si vyžadujú netriviálne výpočty. Snaha automatizovať výpočty sprevádza ľudstvo od prehistórie. Prvé prostredky boli pravdepodobne prsty, rôzne predmety napríklad kamienky, neskoršie počítadlá, rôzne strojčeky, tabuľky, logaritmické pravítka, mechanické, elektromechanické a elektronické kalkulačky. V súčasnosti možno zakúpiť jednoduchú kalkulačku za pár korún a zložité aj programovateľné kalkulačky s množstvom funkcií používajú už aj študenti stredných škôl. Kalkulačku obsahujú aj operačné systémy počítačov - napríklad v MS Windows je to program Kalkulačka (Calculator), ktorá okrem základných aritmetických funkcií dokáže aj uloženie a načítanie čísla do a z pamäti, výpočet percenta, trigonometrické funkcie, konverzie čísel do rôznych číselných sústav atď. Kalkulačka býva súčasťou hodiniek a mnohých mobilných telefónov. Pre zložitejšie výpočty sa používajú rôzne aplikačne orientované programy, ktoré umožňujú nielen numerické výpočty ale aj zobrazenie výpočtov v grafickej podobe. Niektoré z nich ako Mathematika alebo Malab predstavujú zložité nástroje nielen pre výpočty ale aj simulácie komplexných javov. 8.2 TABUĽKOVÝ PROCESOR (SPREADSHEET) Je paradigma výpočtov simulujúca tabuľku čísiel, ktoré možno sčítať alebo odčítavať po riadkoch alebo stĺpcoch. Postupne sa tieto základné aritmetické funkcie rozširovali o ďalšie aritmetické operácie ako aj možnosti písania algoritmov pre komplexné výpočty ako je riešenie rovníc. Zdokonali sa aj možnosti prezentácie výsledkov, napríklad formou grafov ako aj používateľské rozhranie, využívajuce prácu s oknami a myšou. Prvým tabuľkovým procesorom bol program VisiCalc pre 8 bitový počítač Apple II. Za ním nasledovali ďalšie programy, medzi ktorými veľký úspech dosiahol Lotus 1-2-3 a neskoršie MS Excel. 8.3 MS EXCEL MS Excel je komplexný a flexibilný nástroj, poskytujúci veľké množstvo riešení úloh. Obsahuje všeobecné príkazy ako program Word - práca so súbormi, označovanie, rušenie, kopírovanie a iné operácie s vybraným textom.
ÚVOD DO INFORMATIKY (c) 2008 Doc.Ing. Martin Šperka, PhD. (Materiál neprešiel odbornou ani jazykovou korekciou a je určený pre študentov Fakulty informatiky Bratislavskej vysokej školy práva.)
ZÁKLADNÉ OPERÁCIE Základom tohto programu je zošit (workbook), ktorý predstavuje tabuľku, zloženu z riadkov (row) a stĺpcov (column). Priesečníky riadkov a stĺpcov sú bunky (cell). Bunky Riadky sa označujú celými číslami a stĺpce veľkými písmenami abecedy. Dvojica kódu stĺpca a riadku tvorí adresu bunky napríklad C5 znamená bunka v piatom riadku a treťom stĺpci. Program dovoľuje pracovať s blokmi buniek, ktoré sa označia adresami bunky v dolnom ľavom a hornom pravom rohu napríklad A1:C3 je pole buniek tvorených bunkami A1,A2,A3, B1, B2,B3,C1,C2,C3. Jednotlivé alebo bloky buniek sa môžu označiť - vybrať pomocou myši, rušiť alebo kopírovať. Bunku môžno naformátovať to je určiť v akom formáte bude reťazec znako alebo číslo. Text v bunke môže mať zvolenú veľkosť, typ a farbu písma, zarovnanie. Text môže byť horizontálny, vertikálny alebo pod rôznym uhlom. Je možné nastaviť farbu pozadia a tvar hranice bunky. Obsah bunky je možno uzamknúť, to znamená, že ho možno meniť len po odomknutí a skryť (hidden), to znamená, že obsah nie je viditeľný. Tieto vlatnosti sa nastavia príkazom formát. Obsah bunky môže byť aj dátum, odkaz na inú bunku, vzorec a funkcia. Vzorce Vzorec sa nastaví stlačením znaku = v poli pre vkladanie obsahu do bunky. Vzorec je reťazec číslic, abecedných znakov a špeciálnych znakov - aritmetických operátorov +, -, , /, ^. Napríklad textový reťazec =(10+8-6)/(2*3) spôsobí, že namiesto tohto textového reťazca bude v bunke číslo 2, alebo =2^3 spôsobí, že obsah bunky bude 8. FUNKCIE Funkcia v programe Excel je obdobou matematickej funkcie tak ako ju poznáme z matematiky. V tomto prípade je to program vykonávajúci nejakú jednoduchú alebo zložitejšiu postupnosť operácií napríklad výpočet trigonometrickej funkcie určitého uhla. Funkcia sa skladá z mena - identifikátoru a argumentov - parametrov. Používateť nevidí ako sa tento výpočet vykonáva, algoritmus aj kód funkcie je preňho ukritý. Môže ju ale používať - volať takým spôsobom, že do bunky vloží meno funkcie a do zátvoriek vloží hodnoty argumentov. Argumenty môžu byť aj mená iných buniek, v ktorých sú ich hodnoty. Výsledkom volania funkcie je jedna hodnota. Napríklad funkcia COS(0) vráti hodnotu 1. MS Excel obsahuje veľa funkcií, rozdelených do skupín. Sú to nasledovné skupiny funkcií: Finančné, funkcie pre prácu s časom a dátumami, matematické a trigonometrické, štatistické, vyhľadávanie a referencie, databázové funkcie, funkcie pre prácu s textom, logické a informačné. Logické funkcie TRUE() vráti hodnotu TRUE, FALSE() vráti hodnotu FALSE. Funkcia IF() vráti jednu hodnotu TRUE, ak je podmienka vyhodnotená ako pravdivá FALSE ak sa vyhodnotila ako nepravdivá. Syntax príkazu môže mať formu IF(logický_test, hodnota_ak_true, hodnota_ak_false). Napríklad IF(B6=20;"hodnota b6 je dvadsať"; "hodnota nie je dvadsať") spôsobá vypísanie prvého textu v úvodzovkách ak je v bunke B6 číslo 20 v opačnom prípade sa vypíše druhý text. V podmienených príkazoch sa môžu používaťfunkcie AND(), OR() a NOT(). AND spôsobí návrat hodnoty TRUE ak všetky podmienky sú TRUE a FALSE v prípade ak minimálne jedna z podmienok má hodnotu FALSE. Funkcia OR vráti TRUE ak ktorýkoľvek argument je
ÚVOD DO INFORMATIKY (c) 2008 Doc.Ing. Martin Šperka, PhD. (Materiál neprešiel odbornou ani jazykovou korekciou a je určený pre študentov Fakulty informatiky Bratislavskej vysokej školy práva.)
rovný TRUE alebo FALSE ak sú všetky rovné FALSE. A konečne NOT je inverzia logickej hodnoty podmienky. Napríklad ak obsah bunky A1 je: =IF((A2=2)*AND(A3=3);"pravda";"nepravda"), potom v nej vidíme text "pravda" ak v bunke A2 je 2 a súčasne v bunke A3 je 3. Ak je obsah A2 alebo A3 iný, potom v A1 je text "nepravda". Matematické a trigonometrické funkcie Je to množstvo funkcií pre výpočet hodnôt logaritmov, exponenciálnych funkcií, trigonometrických funkcií, absolútnej hodnoty, konverzie stupňov na radiány a naopak, faktoriálu, generovania náhodných čísel, zaokrúhľovania, sumácie množiny čísel, atď. Napríklad ABS() vráti absolútnu hodnotu čísla, COS() vráti kosínus hodnoty uhla, ASIN() vráti inverznú hodnotu sínusu uhla, PI() vráti hodnotu Ludolfovho čísla, EXP() vráti hodnotu mocniny, LOG() vráti hodnotu logaritmu, SUM() vráti sumu buniek v zozname argumentov. Funkcie pre prácu s časom a dátumami Poskytujú údaje o čase a dátumoch. Napríklad DATE(91, 1, 1) vráti číslo 33239, to je sériové číslo korešpondujúce dátumu 1.1.1991. NOW( ) - vráti sériové číslo súčasného dátumu, SECOND("4:48:18 PM") vráti 18, SECOND(0.01) vráti 24 - číslo v intervale 0 až 59, ktoré zodpovedá sekunde v sériovom čísle. TIME(16, 48, 10) vráti 0.700115741, čo je ekvivalent 4:48:10 P.M. Vyhĺadávanie a referencie Tieto funkcie prehľadávajú dáta, indexujú dáta, porovnávajú dáta. Napríklad INDEX() vráti index v tabuľke, ROW() vráti číslo riadku referencie, HYPERLINK() vytvorí odkaz na súbor na disku alebo v internete. Databázové funkcie DGET() získa zápis v databáze, DSUM() sčíta riadky alebo stĺpce v databáze, DAVERAGE() urobí priemer čísel v databáze, DMIN() vyhĺadá najmenšie číslo z udaných čísel v databáze. Funkcie pre prácu s textom Poskytujú nástroje na spracovanie textu. Nasleduje opis niektorých z nich. CHAR() vráti znak daného kódu, FIND() nájde textový reťazec v inom režazci a vráti číslo poradia prvého znaku hľadaného textového reťazca, CODE() vráti numerickú hodnotu textového reťazca, LEN() vráti pošet znakov daného reťazca, TEXT() konvertuje číselnú hodnotu na textový reťazec, VALUE() textový reťazec na číselnú hodnotu Napríklad TEXT(TIME(23, 18, 14), "h:mm:ss AM/PM") vráti text "11:18:14 PM"
Informačné funkcie Tieto funkcie poskytujú informáciu a dátach v bunkách a to napríklad TYPE() vráti hodnotu typu konštanty, CELL() vráti údaj o hornej ľavej bunke, ISBLANK() vráti hodnotu TRUE ak je bunka prázdna, ISERROR() vráti hodnotu TRUE ak je v bunke chybové hlásenie, ISNUMBER() vráti hodnotu TRUE ak je obsah bunky číslo. Štatistické funkcie
ÚVOD DO INFORMATIKY (c) 2008 Doc.Ing. Martin Šperka, PhD. (Materiál neprešiel odbornou ani jazykovou korekciou a je určený pre študentov Fakulty informatiky Bratislavskej vysokej školy práva.)
Sa používajú pri spracovaní a vyhodnocovaní dát štatistického charakteru. Nasleduje zoznam niektorých funkcií. AVEDEV(n1,n2, ...) vráti priemer absolútnych odchyliek z čísiel n1,n2,… AVERAGE () je priemer. Napríklad ak bunky A1:A5 obsahujú čísla 10, 7, 9, 27,2 potom AVERAGE(A1:A5) je 11 CORREL(pole1,pole2) vráti korelačný koeficient dvoch polí hodnôt, napríklad vzťah medzi lokálnymi teplotami a použitím klimatizácie CORREL({3,2,4,5,6},{9,7,12,15,17}) equals 0.997054 MEDIAN(n1,n2, ...) vráti stred množiny čísiel, napríklad MEDIAN(1, 2, 3, 4, 5) je 3 a MEDIAN(1, 2, 3, 4, 5, 6) je 3.5 to je priemer 3 a 4. PERMUT(číslo,vybrané číslo) vráti počet permutácií pre daný počet objektov, ktoré môžu byť vybrané z počtu objektov napríklad PERMUT(100,3) je 970200. Finančné funkcie Tieto funkcie sa používajú napríklad pri výpočte splatnosti pôžičiek a iných zložitejších finančných kalkuláciaách. DB() vypočíta odpis majetku za zadané obdobie podľa metódy klesajúceho zostatku s pevným koeficientom, FV() vráti budúcu hodnotu investície vypočítanú na základe pravidelných a konštantných splátok a konštantnej úrokovej miery. IPMT() vráti výšku úroku v určitom úrokovom období vypočítanú na základe pravidelných konštantných splátok a konštantnej úrokovej miery, IRR() – vráti internú výnosovú sadzbu série toku peňazí. ISPMT () vráti výšku úroku priamej pôžičky. MIRR() vráti internú výnosovú sadzbu pravidelného toku peňazí. NPER() vráti počet období pre investíciu vypočítaný na základe pravidelných a konštantných splátok a konštantnej úrokovej miery. NPV() vráti čistú súčastnú hodnotu investície vypočítanú na základe diskontnej sadzby a sérii budúcich splátok a príjmov. PMT vypočíta splátku pôžičky na základe konštantných splátok a konštantnej úrokovej miery. PV() vráti súčasnú hodnotu investície: celková čiastka určujúca súčasnú hodnotu série budúcich platieb. RATE() vráti úrokovú mieru na obdobie pôžičky alebo anuity. SLN() vráti priame odpisy majetku pre jedno obdobie. SYD() vráti smerné číslo ročných odpisov majetku pre dané obdobie. VDB() vypočíta odpisy majetku pre každé zadané obdobie vrátane neukončených období pomocou dvojitej regresívnej metódy. VKLADANIE OBJEKTOV Tak ako v programe Word aj v programe Excel je možné vkladať rôzne objekty ako sú grafy, vektorové alebo rastrové obrázky z iných programov, hyperlinky atď. Grafy Excel umožňuje zobraziť rôzne typy dvojrozmerných a trojrozmerných grafov - v axonometrii z jednorozmerných polí alebo dvojrozmerných matíc, ktorá reprezentujú skupiny označených buniek. Napríklad z poľa 4x3 buniek je možné vytvoriť nasleovné grafy. 1 2 3 4
2 2 2 2
3 2 1 3
ÚVOD DO INFORMATIKY (c) 2008 Doc.Ing. Martin Šperka, PhD. (Materiál neprešiel odbornou ani jazykovou korekciou a je určený pre študentov Fakulty informatiky Bratislavskej vysokej školy práva.)
4 3,5 3 2,5 Series1
2
Series2
p
1,5
Series3
1 0,5
S3 S2
0 1
2
S1
3
4
4,5 4 3,5 3 Series1
2,5
Series2
2
Series3
1,5 1 0,5 0 1
2
3
4
100% 90% 80% 70% 60%
Series3
50%
Series2
40%
Series1
30% 20% 10% 0% 1
2
3
4
INÉ MS Excel a Open Office poskytuje veĺké množstvo funkcií s dátami ako sú kontingenčné
1 2 3 4
tabuľky, nástroje pre analýu dát, spätné riešenie, citlivostná analýzu a scenáre, makrá. ----------------------------------------------------------------------------------------------------------------ZDROJE INFORMÁCIÍ (kap 8)
ÚVOD DO INFORMATIKY (c) 2008 Doc.Ing. Martin Šperka, PhD. (Materiál neprešiel odbornou ani jazykovou korekciou a je určený pre študentov Fakulty informatiky Bratislavskej vysokej školy práva.)
http://www.mathworks.com/programs/techkits/techkit_ml_ggl.html?s_cid=Gmatlab_c_ctx free Matlab kit. ÚLOHY A MINIMÁLNE POŽIADAVKY (kap. 8) ÚLOHY Prečítajte si túto kapitolu a vyhĺadajte v internete pojmy, s ktorými sa chcete bližšie oboznámiť. Vytvorte dokument simulujúci kalkulačku so základnými aritmetickými operáciami, odmocninou a mocninou dvoch, logaritmami a trigonometrickými funkciami. Vložte do nej funkciu konverzie Eura na Sk. A opačne, konverziu stupňov celzia na Farenheit a opačne. Urobte dokument pre domáci rozpočet, tak že budete môcť sledovať výdavky v jednotlivých položkách a mesiacoch. MINIMÁLNE POŽIADAVKY NA VEDOMOSTI Vedieť o možnostiach a nástrojoch kalkulácií a numerických výpočtov, vymenovať základné charakteristiky týchto nástrojov, poznať základnú treminológiu tabuľkových kalkulátorov, princpy práce s nimi. MINIMÁLNE POŽIADAVKY NA ZRUČNOSTI (Prečítajte si tieto činnosti bod po bode a ak niektoré z nich neovládate, konzultujte ich s pedagógom) Vedieť dokonale používať všetky funkcie programu Kalkulačka (Calculator) z píslušenstva MS Windows. Program poskytuje pomoc, tak že po stlačení pravého tlačidla myši, pri kurzore nad hľadanou funkciou vypíše opis funkcie. Vedieť spustenie MS Excel, vytvorenie nového súboru, otvorenie existujúceho a uloženie, otvorenie a zapísanie šablóny, zápis dát do buniek, ich zväčšovanie a zmenšovanie, formátovanie, kopírovanie, ochrana (heslom) zošitu, bunky, použitie vzorcov (aritmetické operácie, podmienka IF), použitie matematických funkcií (Suma, počet, maximum, minimum, náhodné čísla atď.), použitie štatistických funkcií (priemer, medián,…), vytvoriť jedno alebo dvojrozmerný graf zobrazujúci údaje v tabuľke, kreslenie, vkladanie obrázkov a objektov. Užitočné vedomosti, ktoré sa po absolvovaní kurzu nevyžadujú sú: Použitie finančných funkcií (pôžička pri určitom úroku a vypočítať výšku mesačnej splátky alebo dobu splácania ak je určená výška splátok). Hadanie riešenia - ak sú známe bunky, vzorec a hľadáme hodnotu bunky aby výsledok vzorca bol hľadaná hodnota. Automatické vyplňovanie tabuliek kopírovaním buniek, postupnosti (rady) s lineárnym a nelineárnym rastom. Práca so zoznamami, prezeranie a doplňovanie zoznamov, triedenie zoznamov. Medzisúčty, filtrovanie údajov, kontingenčné tabuľky - scenáre, nástroje pre analýu dát, spätné riešenie, citlivostná analýza, makrá.