Algoritmus a algoritmizácia

Podobné dokumenty
Základy algoritmizácie a programovania

Programovanie I. Úvod do programovania Mgr. Stanislav Horal, Katedra informatiky, FPV, UCM

značky spájame spojnicami, šípka musí byť ak ...

Pascal základné pojmy

PODPROGRAMY. Vyčlenenie podprogramu a jeho pomenovanie robíme v deklarácii programu a aktiváciu vykonáme volaním podprogramu.

15. Príkazy vetvenia

Zvyškové triedy podľa modulu

Metóda vetiev a hraníc (Branch and Bound Method)

Pozičné číselné sústavy. Dejiny. Číselná sústava je spôsob, akým sú zapisované čísla pomocou znakov (nazývaných cifry).

Diplomový projekt. Detská univerzita Žilinská univerzita v Žiline Matilda Drozdová

UČEBNÉ OSNOVY do ŠkVP

ALGORITMY A PROGRAMOVANIE VO VÝVOJOVOM PROSTREDÍ LAZARUS. Vývojové prostredie Lazarus, prvý program

Funkcia - priradenie (predpis), ktoré každému prvku z množiny D priraďuje práve jeden prvok množiny H.

Operačný systém Úvodná prednáška

Iracionálne rovnice = 14 = ±

Strojový kód, assembler, emulátor počítača

Imagine. Popis prostredia:

PROGRAMOVANIE A JEHO POZÍCIA VPREDMETE INFORMATIKA. Mgr. Ján Guniš

Programovanie.NET, C++ - najbližšie termíny:

V nej je potrebné skontrolovať správnosť prenesených a prepočítaných zostatkov z roku 2008.

M úlohy (vyriešené) pre rok 2017

Finančný manažment, finančná matematika a účtovníctvo

3 Determinanty. 3.1 Determinaty druhého stupňa a sústavy lineárnych rovníc

Pracovnoprávny vzťah závislá práca

Individuálny algoritmický jazyk ako prirodzená forma vyjadrovania sa študentov

Organizačné štruktúry.

3D origami - tučniak. Postup na prípravu jednotlivých kúskov: A) nastrihanie, alebo natrhanie malých papierikov (tie budeme neskôr skladať)

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

1. Gigabajty si hneď v prvom kroku premeníme na gigabity a postupne premieňame na bity.

Hromadná korešpondencia v programe Word Lektor: Ing. Jaroslav Mišovych

8. Relácia usporiadania

CVIČENIE 1 : ZÁKLADNÉ VÝPOČTY PRAVDEPODOBNOSTI

VECIT 2006 Tento materiál vznikol v rámci projektu, ktorý je spolufinancovaný Európskou úniou. 1/4

KOMISNÝ PREDAJ. Obr. 1

Microsoft Project CVIČENIE 6 1

Úroveň strojového kódu procesor Intel Pentium. Adresovanie pamäte

ZÁKLADY TEÓRIE GRAFOV

Zápis predmetov do AiSu na aktuálny akademický rok

Verifikácia a falzifikácia

Riešené úlohy Testovania 9/ 2011

AIS2 Hodnotenie študentov po skúške POMÔCKA PRE VYUČUJÚCICH

AR, MA a ARMA procesy

Moderné vzdelávanie pre vedomostnú spoločnosť/projekt je spolufinancovaný zo zdrojov EÚ. Grafy

Roverský projekt ako na to?

Matematika Postupnosti

Špecifikácia testu. z matematiky. pre celoslovenské testovanie žiakov 5. ročníka ZŠ v školskom roku 2016/2017

To bolo ľahké. Dokážete nakresliť kúsok od prvého stromčeka rovnaký? Asi áno, veď môžete použiť tie isté príkazy.

Nevypĺňať!!! Údaje je potrebné vyplniť prostredníctvom elektronického formulára na portalvs.sk

Multiplexor a demultiplexor

Osoba podľa 8 zákona finančné limity, pravidlá a postupy platné od

Prijímacie skúšky kritériá pre školský rok 2017/2018

Štruktúry údajov a algoritmy

Ak stlačíme OK, prebehne výpočet a v bunke B1 je výsledok.

Základy optických systémov

Gymnázium Pierra de Coubertina, Námestie SNP 9, Piešťany IŠkVP 2017/18 Rámcový učebný plán pre 8 -ročné štúdium

Návrh, implementácia a prevádzka informačného systému

7.1 Návrhové zobrazenie dotazu

Kontrola používania alkoholických nápojov, omamných a psychotropných látok

Matematika test. Mesačne zaplatí. Obvod obdĺžnikovej záhrady je. Jedna kniha stojí Súčet

Lineárne nerovnice, lineárna optimalizácia

Technická univerzita v Košiciach

Test z matematiky na prijímacie skúšky do 1. ročníka osemročného štúdia

Prevody z pointfree tvaru na pointwise tvar

Matematika test. 1. Doplň do štvorčeka číslo tak, aby platila rovnosť: (a) 9 + = (b) : 12 = 720. (c) = 151. (d) : 11 = 75 :

RIZIKO V PODNIKU. Prípadová štúdia 2. Ing. Michal Tkáč, PhD.

Task, async, await METÓ DY VÝPOČTOVEJ INTELIGENCIE A C# FA K ULTA E L E K T ROTECHNIKY A INFORMATIKY S LOVENSKÁ T E CHNICKÁ U NIVERZITA

Pracovné prostredie MS EXCEL 2003.

PROGRAM VZDELÁVACEJ ČINNOSTI. Anotácia predmetu

Metodika na manažment úloh

TC Obsahový štandard - téma Výkonový štandard - výstup

Riešenie cvičení z 3. kapitoly

Informatika a jej jednotlivé oblastí

Téma : Špecifiká marketingu finančných služieb

tipov pre kvalitnú tlač Na jednoduchých príkladoch Vám ukážeme ako postupovať a na čo si dávať pozor pri príprave podkladov na kvalitnú tlač.

Test. Ktorý valec by ste použili? A. Jednočinný valec B. Dvojčinný valec. Odpoveď:

Vývoj cien energií vo vybraných krajinách V4

Matematika pre tretiakov. Ako reaguje séria učebných materiálov M. Belica a J. Striežovskej na zmeny v išvp

Vzor PRÍDELOVÝ LÍSTOK KATEGÓRIE A

MOCNINY A ODMOCNINY Eva Zummerová

MATLAB (1) - úvod do programovania vedeckých problémov. LS 2017, 8.predn.

Nová maturita - zmeny v maturite 2013

OCHRANA INOVÁCIÍ PROSTREDNÍCTVOM OBCHODNÝCH TAJOMSTIEV A PATENTOV: DETERMINANTY PRE FIRMY EURÓPSKEJ ÚNIE ZHRNUTIE

PLASTOVÉ KARTY ZÁKAZNÍKOV

VÝPOČET OBVODU TROJUHOLNÍKA A OBJEMU KVÁDRA V PROGRAME MICROSOFT OFFICE EXCEL 2007

Kontrola väzieb výkazu Súvaha a Výkaz ziskov a strát Príručka používateľa

Gymnázium P.O.Hviezdoslava Dolný Kubín Hviezdoslavovo nám. č. 18, Dolný Kubín

ONLINE POBOČKA. pre zamestnávateľov MANUÁL

Smernica pre výkon finančnej kontroly na Mestskom úrade v Lipanoch

Studentove t-testy. Metódy riešenia matematických úloh

Všeobecne záväzné nariadenie Mesta Trenčianske Teplice č. x/2016 o používaní pyrotechnických výrobkov na území mesta Trenčianske Teplice

TomTom Referenčná príručka

Príloha číslo 1 k Metodickému usmerneniu vo veci dohôd o prácach vykonávaných mimo pracovného pomeru zo dňa :

Užívateľská príručka systému CEHZ. Základné zostavy Farmy podľa druhu činnosti

Matematika test. Cesta trvala hodín a minút.

Smernica primátora č. 2/2011 o vykonávaní kontroly požívania alkoholu, omamných látok alebo psychotropných látok

DOBROPISY. Dobropisy je potrebné rozlišovať podľa základného rozlíšenia: 1. dodavateľské 2. odberateľské

Obrázok Časový plán projektu, určite kritickú cestu. Obrázok Časový plán projektu, určite kritickú cestu

OBCHOD MARKETING PSYCHOLÓGIA A ETIKA PREDAJA

Sadzobník poplatkov, úrokov a limitov. 1) Investičné životné poistenie 2) Kapitálové životné poistenie

Podlimitná zákazka Verejný obstarávateľ

Transkript:

Algoritmus a algoritmizácia predpokladom potreby algoritmu je existencia problému v prvých rokoch života je riešenie problémov postavené na iných základoch ako neskôr riešenie mnohých problémov je automatické bez uvedomenia si existencie algoritmu Problém pitia kakaa overiť dostatok surovín 1. do hrnčeka nalejeme mlieko, 2. dáme ho zohriať, 3. do prázdnej šálky zmiešame cukor a kakao, 4. skontrolujeme mlieko, 5. ak nie je dosť teplé, vrátime sa do bodu 4., 6. zalejeme zmes v šálke, 7. necháme vychladnúť, 8. vypijeme. 9. a je po probléme... Terminológia Problém stav, v ktorom jestvuje rozdiel medzi tým, čo v danom momente máme a tým, čo chceme dosiahnuť Riešenie problému odstraňovanie rozdielu medzi pôvodným stavom a tým, čo chceme dosiahnuť Algoritmus postup, ktorým sa pri riešení problému riadime Nie každý problém je riešiteľný a nie vždy sa dopracujeme k požadovanému výsledku Algoritmus a život riešiť pomocou algoritmu problémy reálneho života je dosť náročné, pretože správny algoritmus vždy berie do úvahy všetky možnosti, detaily, náhody alebo zriedkavé situácie (pitie kakaa). Algoritmoch má zmysel hovoriť vtedy, keď máme k dispozícii určitú obmedzenú množinu príkazov (môže byť aj veľmi veľká), pomocou ktorých dokážeme navrhnúť postup pri riešení. Algoritmus a život riešiť pomocou algoritmu problémy reálneho života je dosť náročné, pretože správny algoritmus vždy berie do úvahy všetky možnosti, detaily, náhody alebo zriedkavé situácie (pitie kakaa) algoritmoch má zmysel hovoriť vtedy, keď máme k dispozícii určitú obmedzenú množinu príkazov (môže byť aj veľmi veľká), pomocou ktorých dokážeme navrhnúť postup pri riešení Do programov zjednodušene povedané predpisov toho, čo má vykonávať počítač vkladá každý programátor kúsok seba, spolu s klasickým postupom riešenia dodáva k nemu aj svoj estetický a podľa neho efektívny pohľad na spracovávanú problematiku.

Informatika je v porovnaní s týmito klasickými prírodovednými disciplínami dieťaťom v plienkach. Kým matematika, fyzika, biológia... sa vyučujú stovky až tisíce rokov, informatika nemá ako vedná disciplína ani päťdesiat (a ako predmet vyučovania ešte menej). Okrem klasických poznatkov, zručností a návykov sa musíme dokázať orientovať v množstve najrôznejších informácií (aj dezinformácií), efektívne využívať rôzne databázy údajov, komunikovať pomocou najrozličnejších technických prostriedkov nielen v regionálnom, ale aj v celosvetovom rámci. Algoritmus je elementárnym pojmom informatiky. Definujeme ho iba opisne: presná postupnosť krokov a inštrukcií, ktorá nás od (meniteľných) vstupných údajov privedie v konečnom čase k výsledku. Pre upresnenie toho, či je postup algoritmom, sa používajú doplňujúce vlastnosti, ktoré znovu môžeme uviesť iba opisne: Vlastnosti algoritmu 1. Elementárnosť Postup je zložený z činností, ktoré sú pre realizátora elementárne zrozumiteľné. 2. Determinovanosť Postup je zostavený tak, že je v každom momente jeho vykonávania jednoznačne určené, aká činnosť má nasledovať, alebo či sa už postup skončil. 3. Rezultatívnosť Postup dáva pre rovnaké vstupné údaje vždy rovnaké výsledky. 4. Konečnosť Postup skončí vždy v konečnom čase. 5. Hromadnosť Postup je aplikovateľný na celú triedu prípustných vstupných údajov. 6. Efektívnosť Postup sa uskutočňuje v čo najkratšom čase a s využitím čo najmenšieho počtu prostriedkov. Algoritmizácia -- rozumieme ňou schopnosť aktívne vytvárať algoritmy určené pre nemysliace zariadenie. Je na to potrebná aj dôkladná znalosť problémového prostredia, skúsenosť s formulovaním algoritmov a schopnosť využiť obmezené prostriedky konkrétného jazyka. Programovanie je konštruktívna myšlenková, ale aj praktická činnost, kedy vytvárame nové programové produkty realizovatelné na počítači. Programovaním sa učíme predovšetkým myslieť, organizovať svoje myšlienky a dokázať ich realizáciou poveriť počítač. Elementárnosť každý postup môže byť zapísaný viacerými spôsobmi dôležité je, aby mu rozumel jeho vykonávateľ zohrievanie mlieka v mikrovlnnej rúre: dlhodobý vlastník: zohrej mlieko nový majiteľ? dieťa (počkaj na rodičov a požiadaj ich) J zistite 6 mocninu dvojky pre piataka - šiestaka je formulácia OK druhák ju nezvládne, napriek tomu, že ide len o 2.2.2.2.2.2 jednoznačnosť: Meľ dva dni staré rožky! Rozbi dve vajcia! Determinovanosť v každom kroku musí byť jasné, kam sa má riešenie uberať, čím pokračovať

ak by sa napr. obľúbené umyť, urobiť za sebou poriadok, vyzliecť a spať vykonávalo v inom poradí, nemuselo by už byť tým, čo bolo pôvodne zamýšľané ak by počítač vykonal najprv časovo najnáročnejšiu úlohu: najprv pôjde spať (vykoná časovo najnáročnejšiu úlohu) a až keď sa vyspí, urobí poriadok, vyzlečie sa a umyje Rezultatívnosť výsledok za rovnakých vstupných podmienok má byť vždy rovnaký v bežnom živote sa to vždy podariť nemusí varenie/pečenie číslicová technika, pokiaľ nedôjde k poruche, s tým problémy nemá Skúste: Traja chlapci si v športovom obchode kúpili loptu. Zaplatili za ňu spolu 30,- Sk. Keď odišli, predavač zistil, že lopta stála len 25,- Sk a so zvyšnými peniazmi poslal za nimi pomocníka. Ten im dal 3,- Sk a 2,- Sk si ponechal od cesty. Takže chlapci (keďže každý dostal 1,- Sk nazad) zaplatili za loptu po 9,- Sk a pomocníkovi zostali 2,- Sk. Spolu: 9 x 3 + 2 = 29,- Sk. Kam sa podela zvyšná koruna? (Zle spravená skúška správnosti, síce platí 9x3=27, ale lopta stála 25, 2Sk sú tie, čo si nechal pomocník) Konečnosť vlastnosť má zabezpečiť, aby sa algoritmus vždy skončil človek, pracujúci s problémom na základe skúseností dokáže určiť, či jeho postup dá alebo nedá správny výsledok (resp. či skončí alebo nie). počítač bez skúseností sa na takejto úrovni rozhodnúť nedokáže Algoritmus pre počítač 1. polož hrniec s jedlom na varič, 2. pusti plyn, 3. miešaj, kým nezačne vrieť.... Konečnosť II. Kop, kým nenarazíš na poklad! Kým je zadané číslo menšie ako jedna, vynásob ho dvoma! existujú aj problémy, ktorých riešenie je síce konečné, ale nájdenie výsledku trvá veľmi dlho. šifrovacie algoritmy, keď síce teoreticky dokážeme rozšifrovať každú správu, no doba realizácie je taká dlhá, že správa po rozšifrovaní (po 10 rokoch) stráca zmysel. počítanie buniek v ľudskom tele, molekúl v litri vzduchu zrniek piesku na púšti. Hromadnosť vlastnosť skôr užitočná ako nutná nie každý algoritmus vie byť hromadný, je potrebné vkladať do algoritmu určité vstupné parametre napr. objem kvádra, výpočet dĺžky brzdnej dráhy pri rýchlosti vozidla a povrchu vozovky a zadanej hmostnosti

pri tvorbe algoritmu nejde o vyriešenie konkrétneho problému, ale len o popísanie postupu, pomocou ktorého možno získať výsledok Efektívnosť opäť nepovinná vlastnosť navrhnúť taký postup, ktorý s použitím minimálnych prostriedkov v čo najkratšom čase vyrieši problém aj neefektívny algoritmus je algoritmom Pri prehliadke veliteľ potreboval zistiť počet nastúpených vojakov. Vojaci stáli v 32 radoch po 17. Úlohou poveril dvoch zástupcov. Prvý postupoval nasledovne: 17+17+17+17+...+17, druhý to skúsil ako 17 x 32. Čo myslíte, ktorý sa dopracoval k výsledku skôr? Problém sčítavania čísel 1 až 100. Prvý spôsob, ktorému všetci rozumieme je postupovať 1+2+3+4+...+100. K výsledku sa síce dostaneme, ale ak vezmeme dvojice čísel 1+100, 2+99, 3+98... 50+51 (spolu ich je 50), vyriešime problém podstatne rýchlejšie: dvojíc je 50, ich súčet je 101, teda 101 x 50 = 5 050. Načo algoritmizovať? život je algoritmus (resp. je zložený z algoritmov) moje vstávanie: zazvoní budík, otvorím pravé oko, udriem ho (budík), zatvorím pravé oko, o dvadsať minút sa strhnem, v zhone zhltnem raňajky bežím do práce na čo je dobrý popis algoritmu? vďaka popisu dokážeme vykonávaním algoritmu poveriť iného človeka alebo počítač vďaka vyjadreniu myšlienok sa nám problém stáva zrozumiteľnejším a sme schopní lepšie mu porozumieť Algoritmizácia proces, ktorý pri zápise algoritmu vykonávame na začiatku vždy potrebujeme určiť: vstupné podmienky (napr. rozsah hodnôt, ktoré môžu do algoritmu vstupovať) výstupné podmienky (vlastnosti výsledku) Zadanie algoritmu zapisujeme: {VST: vstupné podmienky}? {VÝS: výstupné podmienky} Algoritmický jazyk jazyk dorozumievací prostriedok slovenský jazyk cca 110.000 slov

anglický jazyk 800.000 slov použitie ľudského jazyka je problematické frazeologizmy, príslovia a porekadlá synonymá homonymá tvary, pády, osoby plynulý prirodzený vývoj pribúdanie a vypúšťanie slov => potreba redukcie prirodzeného jazyka Algoritmické jazyky niekoľko typov: 1. vývojové diagramy (postupnosť činností popisovaná prostredníctvom grafických značiek a textu v nich), 2. štruktúrogramy (zhutnená obdoba vývojových diagramov, ktorá však oproti vývojovým diagramom nie je definovaná normou), 3. obrázkové jazyky (často detské programovacie jazyky umožňujúce programovať prostredníctvom spájania obrázkov), 4. rozhodovacie tabuľky (popisujú zložitejšie problémy pozostávajú zo zoznamu podmienok, kombinácie podmienok, zoznamu činností a kombinácie činností pre našu prácu nie sú vhodné), 5. slovný zápis algoritmu v národnom jazyku (formalizované jazyky, ktoré sa od programovacích jazykov odlišujú použitím slov národného), 6. programovacie jazyky (formalizované algoritmické jazyky často založené na redukcii slov anglického jazyka). Skladba algoritmického jazyka operačná zložka: Príkazy: vety jazyka prikazujúce procesoru vykonať presne stanovené činnosti. (vstupu, výstup a priradenie). musia spracúvať iné objekty: premenné, konštanty a výrazy. Premenná objekt obsahujúci počas realizácie algoritmu konkrétnu hodnotu presne stanoveného typu (napr. celé číslo, reálne číslo, reťazec znakov...). Konštanta objekt nadobúdajúci počas celej realizácie algoritmu jedinú konkrétnu hodnotu príslušného typu. Je to obdoba konštánt známych z matematiky, napr. pí, e, ale aj z fyziky: g, c, k, e, m. Výraz predpis obsahujúci konštanty, premenné a spôsob ich spracovania pomocou operácií a funkcií podobných tým, ktoré poznáme z matematiky. Výsledkom je hodnota príslušného typu, ktorá vznikne po vykonaní vo výraze naznačeného spracovania. napr. obsah=a*b obsah=pí*r*r Skladba algoritmického jazyka riadiaca zložka: prostriedky pre riadenie postupnosti vykonávania jednotlivých prvkov zložky operačnej vďaka nej je v každom kroku algoritmu jednoznačne určená činnosť, ktorá sa má vykonať sekvencia vetvenie

cyklus Algoritmické konštrukcie sekvencia postupnosť príkazov (príkaz je povel, ktorý počítač alebo iné zariadenie pozná a dokáže vykonať) vykonávanú v takom poradí, v akom sú jednotlivé časti zapísané vetvenie poskytuje možnosť rozhodnúť sa podľa pravdivosti skúmaného znaku. Skladá sa z podmienky uvedenej za slovíčkom ak a z príkazov, ktoré sa vykonajú v prípade kladného a záporného výsledku. Týmto dvom častiam hovoríme vetvy. cyklus umožňuje ľubovoľnú činnosť opakovať. Pri opakovaní je dôležité čo (telo cyklu) sa má opakovať a dokedy (podmienka cyklu) sa má opakovať Príklad sekvencie Majme k dispozícii robotický vysávač, ktorý dokáže nasledovné činnosti: posun posunie vysávač vpred o 50 cm, vysaj zapne vysávanie prachu na 10 s, vľavo bok - otočí sa o 90 doľava. Zabezpečte, aby vysávač vysal metrový pás v smere, ktorý má nastavený. Riešenie vysaj posun vysaj posun // 50 cm // 100 cm // nie je potrebné Problém sme vyriešili vďaka sekvencii príkazov, ktoré sa vykonávajú v takom poradí, v akom sú zapísané. Vo všeobecnosti možno sekvenciu zapísať nasledovne: príkaz 1 príkaz 2... príkaz n Príklad alternatívy Zabezpečte, aby sa vysávač v prípade narazenia na prekážku otočil doľava. Na riešenie problému potrebujeme, aby vysávač dokázal zistiť (rozhodnúť), či má pred sebou prekážku alebo nie. Nevyhnutnou je teda nová schopnosť: prekážka v prípade existencie prekážky vráti hodnotu ANO, inak hodnotu NIE, Riešenie ak prekážka = ÁNO tak inak vľavo bok posun zápis obsahuje dve vetvy (alternatívy), pričom stroj, ktorý príkazy vykonáva si vyberie v závislosti od splnenia podmienky. vo všeobecnosti: ak podmienka tak

inak príkaz 11 príkaz 12...príkaz 1m príkaz 21 príkaz 22...príkaz 2n koniec ak Príklad cyklu Zabezpečte, aby vysávač vyčistil 15 metrový pás. úlohu by sme mohli riešiť zápisom sekvencie tak, že by sme 30 ráz za sebou zopakovali dvojicu: vysaj posun vysaj posun vysaj posun vysaj posun... vhodnejšie riešenie však predstavuje použitie cyklu. počet opakovaní nám je známy (30 x - prečo?) Riešenie opakuj 30 krát vysaj posun vo všeobecnosti: opakuj počet krát príkaz 1 príkaz 2... príkaz n koniec opakuj Typy cyklov použitý cyklus sa nazýva cyklus s pevným (známym) počtom opakovaní nie vždy je nám však počet opakovaní známy v momente vytvárania algoritmu => potreba kontroly ukončenia cyklu buď: pred vykonaním kroku (tela) cyklu cyklus s podmienkou na začiatku po vykonaní tela cyklu cyklus s podmienkou na konci v prvom prípade sa cyklus nemusí vykonať vôbec, v druhom prebehne minimálne raz prečo? Príklad: cyklus s podmienkou na začiatku Napíšte algoritmus, ktorý zabezpečí vysávanie od aktuálnej polohy po prekážku. pokiaľ prekážka = NIE rob vysaj posun koniec pokiaľ všeobecne: pokiaľ podmienka rob príkaz 1

príkaz 2... príkaz n koniec rob Príklad: cyklus s podmienkou na konci Upravte algoritmus zabezpečujúci vysávanie od aktuálnej polohy po prekážku tak aby sa vysávanie vykonalo minimálne raz. rob vysaj posun pokiaľ nebude prekážka = ANO všeobecne: rob príkaz 1 príkaz 2... príkaz n pokiaľ nebude podmienka Vývojové diagramy zápis prostredníctvom prirodzeného jazyka nie je prehľadný pre začiatočníkov sú najvhodnejším riešením vývojové diagramy postupný prechod na programovací jazyk okrem sekvencie, vetvenia a cyklu sú potrebné aj prostriedky na vstup a výstup údajov Príkazy vstupu a výstupu Príkaz vstupu p 1,..., p n sú premenné, do ktorých sa uložia údaje na spracovanie Príkaz výstupu h 1,..., h n sú výstupné hodnoty (položkou výstupu môže byť aj text uzavretý v úvodzovkách) Príkaz priradenia a sekvencia príkaz priradenia: p je premenná; v je výraz, ktorého hodnotu priradením premenná p nadobudne

sekvencia: p1,..., pn sú príkazy; vykonajú sa v poradí v akom sú zapísané Jednoduché príklady Vypočítajte súčet dvoch čísel. Zistite obsah a objem kruhu. Vypočítajte objem a povrch hranola. Vetvenie (alternatíva) binárne úplné obsahuje príkazy v oboch vetvách p1, p2 sú príkazy (resp. zložené príkazy) - ak je podmienka splnená vykoná sa p1, - ak nie je splnená vykoná sa p2 binárne neúplné obsahuje príkazy v oboch vetvách - ak je podmienka splnená vykoná sa príkaz p, - inak je vetvenie bez účinku Jednoduché príklady Zistite maximálnu hodnotu z dvoch zadaných čísel. Zistite podiel dvoch čísel (nezabudnite na nemožnosť delenia nulou). Zistite absolútnu hodnotu zadaného čísla. Cyklus s pevným počtom opakovaní - i je riadiaca premenná cyklu, n je počet opakovaní, p je príkaz (resp. zložený príkaz), ktorý sa opakuje s neznámym počtom opakovaní s podmienkou na začiatku s neznámym počtom opakovaní s podmienkou na konci Jednoduché príklady Vypočítajte hodnotu súčtu prvých N prirodzených čísel. Zistite faktoriál zadaného čísla Vypočítajte ciferný súčet číslic daného prirodzeného čísla N.