25. ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ

Slides:



Advertisements
Podobné prezentace
Makra v Excelu.
Advertisements

Stručný úvod do UML.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Co je to uživatelské menu? Ve WinBase si můžeme ke každé aplikaci vytvořit vlastní menu, které po otevření nahradí standardní menu WinBase. Toto uživatelské.
VÝVOJ PROGRAMOVACÍCH JAZYKŮ PERSPEKTIVY ELEKTRONIKY 3. Celostátní seminář, 18. března 2003 Ing. Pavel Pokorný UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ Fakulta technologická.
Tabulky v MS ACCESS Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jiří Novák.
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
HYPERTEXT PREPROCESSOR. PROGRAMOVÁNÍ. DEFINICE POJMŮ Problém Problém nevyřešený, nežádoucí stav obvykle vyžaduje nějaké řešení Neřešitelný problém Neřešitelný.
ALGO – Algoritmizace 1. cvičení
PHP Cyklické příkazy v PHP - 08
C# pro začátečníky Mgr. Jaromír Osčádal
Algoritmizace a programování
PROGRAMOVACÍ JAZYKY (c) Tralvex Yeap. All Rights Reserved.
Algoritmizace 9. Ročník.
Metody zpracování vybraných témat (projektů)
Vývojové diagramy a základy algoritmizace
Algoritmizace a programování
Algoritmizace a programování Podmíněné a cyklické příkazy- 08
Seminář – Základy programování
Algoritmizace.
Informatika a práce s počítačem
25. ALGORITMIZACE A PROGRAMOVÁNÍ
Analýza informačního systému
Vyučovací hodina 1 vyučovací hodina: Opakování z minulé hodiny 5 min Nová látka 20 min Procvičení nové látky 15 min Shrnutí 5 min 2 vyučovací hodiny: Opakování.
Algoritmus po krocích rozepsaný návod k nějaké činnosti
Algoritmizace a základy programování
Základy algoritmizace a programování
Přehled současných způsobů tvorby programů
ALGO – Algoritmizace 2. cvičení
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Úvod do algoritmizace Obsah: Algoritmus, algoritmizace
Objektové programování
Obchodní akademie, Náchod, Denisovo nábřeží 673
Modelování a simulace MAS_02
3. Příkazy  Příkazy dělíme na jednoduché a strukturované.  Jednoduché příkazy - žádnou jejich dílčí částí neni příkaz - přiřazovací, vstupu a výstupu,
ALGORITMIZACE A PROGRAMOVÁNÍ
CYKLUS S PEVNÝM POČTEM OPAKOVÁNÍ Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Pavlína Mihačová. Obchodní akademie a Střední odborná.
OSNOVA: a) Úvod do OOPb) Třídy bez metod c) Třídy s metodamid) Konstruktory a destruktory e) Metody constf) Knihovní třídy g) Třídy ve tříděh) Přetížení.
Algoritmizace a programování Objektově orientované programování - 16 Mgr. Josef Nožička IKT Algoritmizace a programování
IB111 Programování a algoritmizace
Od zadání úlohy k programu Výpočetní systémy I 8. přednáška.
Pascal - cykly.
Dokumentace informačního systému
Algoritmizace a programování Vývojové diagramy - 03
Analýza infromačního systému. Matice afinity ISUD matice – Insert (vkládání dat) – Select (výběr dat) – Update (aktualizace dat) – Delete (vymazání dat)
Algoritmizace a programování Algoritmizace – základní pojmy - 01
Databázové modelování
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Algoritmy – jejich tvorba Střední odborná škola Otrokovice Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je ing. Jaroslav.
Analýza informačního systému. Podrobně zdokumentovaný cílový stav Paramentry spojené s provozem systému – Cena – Přínosy – Náklady a úspory – …
Příkazy cyklů. Co je to cyklus Jako cyklus označujeme opakované vykonávání určitého bloku příkazů Jako cyklus označujeme opakované vykonávání určitého.
Úvod do programování Vyučující: Mgr. Vítězslav Jersák
Algoritmizace. Co je to algoritmizace? Algoritmizace je postup při tvorbě programu pro počítač, kterým lze prostřednictvím algoritmu řešit nějaký problém.
Algoritmizace a programování Algoritmy 4 – Vývojové diagramy (cykly)
Algoritmizace a programování Algoritmy 1 - Úvod. Základní pojmy Počítačový program Počítačový program zápis zdrojového kódu, kterému rozumí počítač zápis.
KURZ ALGORITMIZACE A PROGRAMOVÁNÍ V JAZYCE C Lekce č. 2: Základní pojmy Bc. Radek Libovický.
Návrh uživatelského rozhraní. Volba akcí uživatele – Systém menu Formát ukládání a modifikace dat – Vstupní formuláře Způsob formulování dotazů – SQL,
SOFTWAROVÁ PODPORA PRO VYTVÁŘENÍ FUZZY MODELŮ Knihovna fuzzy procedur Ing. Petr Želasko, VŠB-TU Ostrava.
Vývojová prostředí Objektově Orientované Programování OB21-OP-EL-KON-DOL-M Orbis pictus 21. století.
Algoritmizace – základní pojmy
Základní pojmy v automatizační technice
Definiční obor a obor hodnot
Inf Algoritmus.
Vytváření dokumentace algoritmů
Tradiční metodiky vývoje softwaru
Příkazy cyklu (1) Umožňují vícekrát (nebo ani jednou) pro-vést určitý příkaz Jazyk C rozlišuje příkaz cyklu: s podmínkou na začátku: obecný tvar: while.
Opakování základních příkazů a syntaxí v programovacím jazyce Pascal
Cyklus for (1) Obecný tvar: for (výraz1; výraz2; výraz3) příkaz
Analýza informačního systému
Algoritmizace a datové struktury (14ASD)
Transkript prezentace:

25. ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ (ALGORITIMIZACE ÚLOHY, VLASTNOSTI ALGORITMU, PŘEHLED SOUČASNÝCH ZPŮSOBŮ TVORBY PROGRAMŮ – OBJEKTOVÉ A VIZUÁLNÍ PROGRAMOVÁNÍ)

Postup vzniku počítačového programu Počítačový program – určitá funkční volba algoritmů, posloupnost instrukcí a dat a jejich zobrazení 1) Zadání úkolu – pokud chceme vyřešit nějaký problém, musíme určit jeho podstatu a stanovit jaký má být výsledek 2) Návrh postupu řešení a jeho algoritmizace - důležité jsou slovní formulace úkolu a algoritmus řešení, úkol se zapisuje v drobných krůčcích, aby je procesor mohl realizovat, výběr vhodného programovacího jazyka

3) Zápis programu, ladění programu, chyby - jestliže máme algoritmus, řešící danou úlohu a program ve zvoleném programovacím jazyku, můžeme začít vytvářet vlastní program, poté ho můžeme spustit - jestliže program funguje špatně, začneme ho ladit, abychom odstranili chyby Dva druhy chyb 1) Syntaktické – špatně zapsaný příkaz, který programovací jazyk nezná, překlad programu se zastaví a objeví se hlášení o chybě 2) Logické – program funguje, avšak ne tak jak má, mohli jsme se dopustit chyby v algoritmu 4) Podpora a údržba programu – pokud je vše v pořádku, máme program verze 1.0, dále bychom měli napsat návod k obsluze a program udržovat (radit uživatelům, odstraňovat chyby...)

Algoritmus a jeho vlastnosti Algoritmus – posloupnost operací, která řeší daný úkol 1) Hromadnost – algoritmus slouží k řešení celé skupiny navzájem si podobných úloh, úlohy jsou podobné, ale liší se vstupními daty 2) Konečnost – pro každá příslušná data, algoritmus po konečném počtu kroků skončí 3) Podmíněnost- operace i jejich návaznosti jsou jednoznačně určeny 4) Opakovatelnost– při stejných vstupních hodnotách dostaneme vždy stejný výsledek

Programování zakódování algoritmu do zvoleného programovacího jazyka cílem programování je vytvořit program, který vykazuje určité žádoucí chování proces psaní zdrojových kódů často vyžaduje odborné znalosti v mnoha různých oborech, včetně znalosti oblasti použití s algoritmy se setkáváme běžně ve svém životě procesorem těchto algoritmů jsme my, lidé jakýkoliv návod je postup algoritmu, např. kuchařské předpisy

Příklad – Algoritmus zatloukání hřebíků Zatluč hřebík do desky Analýza úlohy: Vstupní údaje: kladivo, hřebík, deska Výstupní údaje: hřebík zatlučen do desky Analýza: tlouct tak dlouho, dokud není hřebík zatlučen až po hlavičku Sestavení algoritmu Slovní popis: Vezmi kladivo a hřebík Přilož hřebík k desce Uhoď kladivem na hlavičku Je hřebík zatlučen?  ANO - pokračuj bodem 5  NE - vrať se na bod 3 Ukonči činnost a odlož kladivo

Základní příkazy strukturovaného programování Strukturované programování – algoritmus se rozděluje na dílčí úlohy (funkce, procedury), které se spojují v jeden celek Příkaz – může být libovolná povolená řídící struktura, předpisují provedení jistých algoritmických činností Složený příkaz - předepisuje postupné (sekvenční) provádění dílčích příkazů, uzavřených mezi rezervovanými slovy begin a end, může být umístěno více příkazů

Podmíněný příkaz – základní řídící struktura v jakémkoliv programovacím jazyku, která umožňuje dynamicky reagovat na různá data (časté použití je v testování platnosti dat) Cyklus s podmínkou na začátku (příkaz while) -tento cyklus testuje podmínku před samotným provedením těla. z toho vyplývá, že cyklus nemusí proběhnout ani jednou - pokud není před prvním průchodem splněna podmínka, cyklus se jakoby přeskočí a pokračuje se následujícím příkazem - cyklus se používá v případě, pokud nevíme, kolikrát v programu proběhne. Ukončovací podmínka tedy závisí na nějaké akci (příkazu) uvnitř těla cyklu

Cyklus s podmínkou na konci (příkaz repeat) - používá se v případech, kdy víme, že cyklus musí být proveden alespoň jednou, přičemž nemusíme znát kolik opakování přesně bude - jestliže program dospěje k cyklu, provede bez okolků všechny příkazy v jeho těle a potom narazí na podmínku - pokud je tato podmínka splněna, program se vrací na začátek těla cyklu a ten se opakuje. V opačném případě je cyklus ukončen

Cyklus s pevným počtem opakování - používáme ho všude tam kde předem známe počet opakování příkazu u těchto cyklů používáme proměnnou pro řízení počtu opakování, jejíž hodnotu lze výhodně využít i uvnitř těla cyklu Procedury a funkce - tvoří posloupnost instrukcí, které potřebujeme v programu na různých místech zopakovat - jsou to ve své podstatě podprogramy, logické uzavřené programové celky

Objektově orientované programování objektově orientované programování má své počátky na konci 70. let minulého století do té doby byl používán strukturovaný přístup a jednotlivé problémy se dekomponovaly na menší celky až po nejnižší úroveň (metoda shora dolů) naproti tomu objektový přístup funguje na principu zdola nahoru, kdy jsou definovány základní stavební prvky a z nich je teprve celý program skládán díky tomu je možné tyto prvky opětovně použít, stačí jen zajistit jejich společnou existenci a komunikaci s ostatními

Koncepce: Objekty – jednotlivé prvky modelované reality (jak data, tak související funkčnost) jsou v programu seskupeny do entit, nazývaných objekty. Objekty si pamatují svůj stav a navenek poskytují operace (přístupné jako metody pro volání) Abstrakce – programátor, potažmo program, který vytváří, může abstrahovat od některých detailů práce jednotlivých objektů. Každý objekt pracuje jako černá skříňka, která dokáže provádět určené činnosti a komunikovat s okolím, aniž by vyžadovala znalost způsobu, kterým vnitřně pracuje

Zapouzdření – zaručuje, že objekt nemůže přímo přistupovat k „vnitřnostem“ jiných objektů, což by mohlo vést k nekonzistenci. Každý objekt navenek zpřístupňuje rozhraní, pomocí kterého (a nijak jinak) se s objektem pracuje Skládání – Objekt může obsahovat jiné objekty Delegování – Objekt může využívat služeb jiných objektů tak, že je požádá o provedení operace.

Dědičnost objekty jsou organizovány stromovým způsobem, kdy objekty nějakého druhu mohou dědit z jiného druhu objektů, čímž přebírají jejich schopnosti, ke kterým pouze přidávají svoje vlastní rozšíření tato myšlenka se obvykle implementuje pomocí rozdělení objektů do tříd, přičemž každý objekt je instancí nějaké třídy každá třída pak může dědit od jiné třídy (v některých programovacích jazycích i z několika jiných tříd)

Polymorfismus – odkazovaný objekt se chová podle toho, jaké třídy je instancí pokud několik objektů poskytuje stejné rozhraní, pracuje se s nimi stejným způsobem, ale jejich konkrétní chování se liší podle implementace u polymorfismu podmíněného dědičností to znamená, že na místo, kde je očekávána instance nějaké třídy, můžeme dosadit i instanci libovolné její podtřídy, neboť rozhraní třídy je podmnožinou rozhraní podtřídy u polymorfismu nepodmíněného dědičností je dostačující, jestliže se rozhraní (nebo jejich požadované části) u různých tříd shodují, pak jsou vzájemně polymorfní

Vizuální programování Vizuální IDE (vývojové prostředí) umožňují uživateli vytvářet nové aplikace přemístěním programovacích stavebních bloků nebo uzlů a vytvořením vývojových diagramů nebo blokových schémat, které jsou dále přeloženy IDE na počátku vytvoří prázdné okno (formulář) budoucí aplikace. V režimu vizuálního návrhu vkládáme pomocí myši do okna požadované komponenty – IDE okamžitě vytvoří odpovídající zdrojový kód v příslušném jazyce.

Vlastnosti komponent (název, umístění, nápis na ní, barvu, viditelnost atd.) můžeme měnit pomocí inspektoru objektů, přičemž změny se opět ihned promítají do vizuálního návrhu a generovaného zdrojového kódu Prostřednictvím inspektoru objektů můžeme také pracovat s událostmi jednotlivých objektů a definovat ohlasové metody na různé akce (stisknutí tlačítek, pohyb myši, uzavření okna apod.) Přejdeme-li do režimu zdrojového kódu, můžeme pracovat se zdrojovým kódem jednotlivých tříd. Případné úpravy se při návratu do režimu vizuálního návrhu ihned zobrazí – z toho důvodu hovoříme o tzv. dvoucestném nástroji

Vytvořily: ŽANETA ŠPUNDOVÁ, SÁRA POVALILOVÁ