Algoritmus (nebo dřívějším pravopisem algorithmus)



Podobné dokumenty
Algoritmizace a programování

Programování - úvod. Programování. Proces programování. Vlastnosti dobrého programu: Kapitola seznamuje se základními pojmy programování.

Algoritmizace a programování

Objektově orientované databáze

Soubory a databáze. Soubor označuje množinu dat, která jsou kompletní k určitému zpracování a popisují vybrané vlastnosti reálných objektů

Aplikace počítačů v provozu vozidel 9

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: jan.skrbek@tul.cz tel.: Konzultace: úterý

Cílem kapitoly je seznámit studenta se strukturou programu a jeho překladem.

NÁVRHOVÝ PROGRAM VÝMĚNÍKŮ TEPLA FIRMY SECESPOL CAIRO PŘÍRUČKA UŽIVATELE

VYHLÁŠKA ČÁST PRVNÍ STÁTNÍ ZKOUŠKY Z GRAFICKÝCH DISCIPLÍN. Předmět úpravy

XD16HT1 Semestrální práce Algoritmy ČVUT FEL obor STM - Softwarové inženýrství, kombinované studium 4. semestr

Seriál: Management projektů 7. rámcového programu

Čl. I. Vyhláška č. 106/2001 Sb., o hygienických požadavcích na zotavovací akce pro děti, ve znění vyhlášky č. 148/2004 Sb.

Úvod Petr Kropík viz:

Pracovní návrh. VYHLÁŠKA Ministerstva práce a sociálních věcí. ze dne o hygienických požadavcích na prostory a provoz dětské skupiny do 12 dětí

IMPLEMENTACE SW NÁSTROJE PROCESNÍHO ŘÍZENÍ ATTIS

VÝZVA K PODÁNÍ NABÍDKY VE VEŘEJNÉ SOUTĚŽI O nejvhodnější návrh na uzavření pachtovní smlouvy na restauraci Oceán a přilehlé stánky

účetních informací státu při přenosu účetního záznamu,

58/2016 Sb. VYHLÁKA ČÁST PRVNÍ STÁTNÍ ZKOUKY Z GRAFICKÝCH DISCIPLÍN

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

statutární město Děčín podlimitní veřejná zakázka na služby: Tlumočení a překlady dokumentů

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

Android Elizabeth. Verze: 1.3

Název školy: Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, Karlovy Vary Autor: LUBOŠ EHLICH Název materiálu:

S t r á n k a 1 I N V E S T I C E D O R O Z V O J E V Z D Ě L Á V Á N Í

Úvod do jazyka C. Proč jazyk C

Pardubický kraj Komenského náměstí 125, Pardubice SPŠE a VOŠ Pardubice-rekonstrukce elektroinstalace a pomocných slaboproudých sítí

Uživatelská dokumentace

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS

Zadávací dokumentace

Česká školní inspekce Moravskoslezský inspektorát INSPEKČNÍ ZPRÁVA. Základní škola Vražné, okres Nový Jičín. Místní část Vražné 157, Vražné

Zvyšování kvality výuky technických oborů

EDSTAVENÍ ZÁZNAMNÍKU MEg21

2. Vymezení předmětu veřejné zakázky

OBEC HORNÍ BOJANOVICE obecně závazná vyhláška č. 05/2005

Adresace paměti. 11.přednáška

MATEMATIKA A BYZNYS. Finanční řízení firmy. Příjmení: Rajská Jméno: Ivana

1.2.5 Reálná čísla I. Předpoklady:

Metodika pro nákup kancelářské výpočetní techniky

Metody hodnocení rizik

Orientační průvodce mateřstvím a rodičovstvím v zadávacích dokumentacích poskytovatele

METODIKA DODRŽOVÁNÍ PRINCIPŮ ÚČELNOSTI, HOSPODÁRNOSTI A EFEKTIVNOSTI PŘI HOSPODAŘENÍ S VEŘEJNÝMI PROSTŘEDKY NÁVRH

Česká zemědělská univerzita v Praze Fakulta provozně ekonomická. Obor veřejná správa a regionální rozvoj. Diplomová práce

VYKAZOVÁNÍ VÝSLEDKŮ VÝZKUMU A VÝVOJE

ODŮVODNĚNÍ VEŘEJNÉ ZAKÁZKY

ATAZ PRVNÍ ATELIÉR Charakteristika předmětu Hlavní cíl práce Dílčí cíle Požadovaný standard studenta po absolvování předmětu: Obsah Volba zadání

Regenerace zahrady MŠ Neděliště

ZÁKLADNÍ POVINNOSTI DOPRAVCE I PRÁCI S DATY Z DIGITÁLNÍHO TACHOGRAFU

Zadávací dokumentace veřejné zakázky

zadávanou v souladu s 18 odst. 5 zákona 137/2006 Sb. o veřejných zakázkách, ve znění pozdějších předpisů

Obsah. Obsah. Úvod Makra v Excelu Nahrávání maker První setkání s editorem jazyka Visual Basic... 31

ROBOTIKA. univerzální Rozdělení manipulačních zařízení podle způsobu řízení: jednoúčelové manipulátory

SM 23 STROJNÍ VÝROBA JEDNODUCHÝCH SOUČÁSTÍ

Výzva k podání nabídky na veřejnou zakázku malého rozsahu s názvem Komplexní zajištění PO a BOZP pro KÚPK

PODMÍNKY ELEKTRONICKÉ AUKCE SPOLEČNOSTI RWE GAS STORAGE, s.r.o. NA NOVOU SKLADOVACÍ KAPACITU

Pravidla pro využívání lokální počítačové sítě Slovanského gymnázia v Olomouci. Preambule

Jednotný vizuální styl: podpis v ové korespondenci.

Seznámení žáků s pojmem makra, možnosti využití, praktické vytvoření makra.

ORGANIZAČNÍ ŘÁD ŠKOLY

Modul Řízení objednávek.

Dodávka a montáž výměníkové stanice tepla objektu F na akci Obytný soubor Beranových, Praha 18 Letňany

Budování aplikačních rozhraní pro obousměrnou komunikaci mezi ERMS a jejich vztah k Národnímu standardu pro komunikaci mezi ERMS.

Charakteristika kurzu BE4

KOMORA DAŇOVÝCH PORADCŮ ČR STANDARD PRO SDÍLENÍ ÚČETNÍCH / FAKTURAČNÍCH ÚDAJŮ. (Short Invoice Descriptor)

Systém sběru vytříděných složek odpadu v Telči a jejich evidence software

VYR-32 POKYNY PRO SPRÁVNOU VÝROBNÍ PRAXI - DOPLNĚK 6

SRF08 ultrazvukový dálkoměr

Západní město Stodůlky, Administrativní dům A2 plynovod 1.etapa

Technická specifikace a požadavky na grafické provedení Jízdních dokladů

SimOS. Jakub Doležal Radek Hlaváček Michael Očenášek Marek Reimer

ICT plán ZŠ praktické Bochov na rok 2009

Programový komplet pro evidence provozu jídelny v modul Sklad Sviták Bechyně Ladislav Sviták hotline: 608/

Windows 7 kompletní příručka. Bohdan Cafourek. Vydala Grada Publishing a.s. U Průhonu 22, Praha 7 jako svou publikaci

Všeobecné podmínky pro užívání portálu a účast na elektronických dražbách nemovitostí a movitostí (dále též jen Všeobecné podmínky ).

Operační program Vzdělávání pro konkurenceschopnost Název projektu: Inovace magisterského studijního programu Fakulty ekonomiky a managementu

Úvod do programování a práce s počítačem

Pokyn D Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami

PODMÍNKY VÝBĚROVÉHO ŘÍZENÍ

DOTAZNÍK PRO ZÁJEMCE O SOCIÁLNÍ LŮŽKO. Jméno a příjmení: datum narození: 1. Přeji si oslovovat:

Využití mobilního klienta při správě inženýrských sítí. Petr Skála Pontech s.r.o.

Obsah Celex č. Ustanovení 32013L0055

Výzva k podání nabídek (pro účely uveřejnění na nebo www stránkách krajů)

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4.

Inovace výuky prostřednictvím šablon pro SŠ

Zadávací dokumentace dle ustanovení 44 zákona č. 137/2006 Sb., o veřejných zakázkách (dále jen zákon )

Modernizace farmy Požáry

Softwarová pomůcka pro 2D generaci sítě konečných prvků

Klíčové informace fondů obhospodařovaných Raiffeisen penzijní společností a.s.

Zvyšování kvality výuky v přírodních a technických oblastech CZ.1.07/1.128/ Nástrahy virtuální reality (pracovní list)

Výzva k podání nabídek do výběrového řízení. Zadávací podmínky

POKYNY PRO PLATBY FINANČNÍ MECHANISMUS EHP A NORSKÝ FINANČNÍ MECHANISMUS (1.revize - 21.června 2007)

ZADÁVACÍ DOKUMENTACE. Pořízení a provoz konsolidované IT infrastruktury

Jak psát obchodní dopisy

Zadávací dokumentace k veřejné zakázce zadané podle zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů

Výzva k podání nabídek (zadávací dokumentace)

Pokyny k vyplnění Průběžné zprávy

Metodika daňových odpočtů na VaV pro poplatníky

Mapy Stabilního katastru jako zdroj informací pro státní správu a samosprávu

Herní plán KING OF DIAMONDS

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné

Transkript:

Algoritmus (nebo dřívějším pravopisem algorithmus) o přesný návod či postup, kterým lze vyřešit daný typ úlohy. Pojem algoritmu se nejčastěji objevuje při programování, kdy se jím myslí teoretický princip řešení problému (oproti přesnému zápisu v konkrétním programovacím jazyce). Obecně se ale algoritmus může objevit v jakémkoli jiném vědeckém odvětví. Jako jistý druh algoritmu se může chápat i např. kuchyňský recept. V užším smyslu se slovem algoritmus rozumí pouze takové postupy, které splňují některé silnější požadavky: Konečnost o Každý algoritmus musí skončit v konečném počtu kroků. Tento počet kroků může být libovolně velký (podle rozsahu a hodnot vstupních údajů), ale pro každý jednotlivý vstup musí být konečný. Determinovanost o Každý krok algoritmu musí být jednoznačně a přesně definován; v každé situaci musí být naprosto zřejmé, co a jak se má provést, jak má provádění algoritmu pokračovat. Protože běžný jazyk obvykle neposkytuje naprostou přesnost a jednoznačnost vyjadřování, byly pro zápis algoritmů navrženy programovací jazyky, ve kterých má každý příkaz jasně definovaný význam. Vyjádření výpočetní metody v programovacím jazyce se nazývá program. Vstup o Algoritmus obvykle pracuje s nějakými vstupy, veličinami, které jsou mu předány před započetím jeho provádění, nebo v průběhu jeho činnosti. Vstupy mají definované množiny hodnot, jichž mohou nabývat. Výstup o Algoritmus má alespoň jeden výstup, veličinu, která je v požadovaném vztahu k zadaným vstupům, a tím tvoří odpověď na problém, který algoritmus řeší. (Algoritmus vede od zpracování hodnot k výstupu - Resultativnost) Efektivita o Obecně požadujeme, aby algoritmus byl efektivní, v tom smyslu, že požadujeme, aby každá operace požadovaná algoritmem, byla dostatečně jednoduchá na to, aby mohla být alespoň v principu provedena v konečném čase pouze s použitím tužky a papíru. (tj. byla elementární) Obecnost (Hromadnost) o Algoritmus neřeší jeden konkrétní problém (např. jak spočítat 3 7 ), ale obecnou třídu obdobných problémů (např. jak spočítat součin dvou celých čísel ). 1

Algoritmus má 1 důležitou funkční chybu? 2

Úvod do vývoje programů (Teď už vážně) vývojový diagram jedna z metod zápisu postupu řešení nějakého problému (algoritmus) pro srozumitelnost se používají zavedené symboly, není normalizováno, takže se můžeme setkat z různými variantami, ale většinou odvozené nebo podobné. Jednotlivé bloky se spojují spojnicemi, při zápisu se snažíme držet směr z vrchu dolů a z leva do prava. Vývojové diagramy dobře slouží k rozmyšlení způsobu jakým budeme pomocí programování řešit, nebo k nastínění řešení někomu jinému, aniž by jsme použily konkrétní programovací jazyk řešení zůstává čitelné pro více lidí. Dobrý programátor neznamená umět dobře programovací jazyk/jazyky, ale hlavně schopnost nalézt řešení problému a to pokud možno ne jedno, ale více a umět i mezi nimi vybírat. Žádné řešení většinou není ideální, jen je více / méně efektivní. Nakonec stejně není až tak důležitá cesta, ale cíl. 3

vývojový diagram postupu při vývoji programu (od zápisu ve VPJ do jeho funkční podoby) o Zdrojový kód = textový soubor s programem v PJ o Překlad = převod do strojového kódu, provádí překladač (Compiler) o Ladění = hledání a odstraňování logických a běhových chyb, různé techniky Logická chyba: Proč to počítá 2+2=6, netiskne, apod. Běhová chyba: /0, zápis do paměti, která není naše apod. program se hroutí chyba v programu = bug ladění = debugging ladící program = Debugger o Toto = kompilační implementace PJ Kompilační vs. interpretované jazyky kompilační implementace PJ 4

o např. C, Pascal, C++ o cílový program = nativní *.exe obsahuje instrukce CPU o nejrychlejší, nepřenositelné interpretační implementace PJ o interpret on-line překládá příkazy PJ do instrukcí o pomalé, přenositelné o např. Basic, PHP, Java Script kombinace o Např. C# (.NET), Java o MSIL = Microsoft Intermediate Language o Relativně rychlé, relativně přenositelné (lze spustit všude, kde je.net) Vývojové prostředky Editory zdrojových kódů = jednoduchý textový editor (nemá pokročilé formátovací funkce jako např. MS Word), ale navíc: Zvýrazňování syntaxe (syntax highlight) 5

Formátování kódu (code formating) Automatické doplňování jmen apod. (code completion) Překladače obvykle ovládány přes příkazový řádek velkou sadou různých přepínačů debuggery umožňují: o Zastavení programu o Krokování o Prohlížení vnitřních stavů ( načetla se ta 3 z klávesnice? ) Integrované vývojové prostředí = integrace editoru zdrojových kódů, ovládání překladače, debuggeru a dalších funkcí do jednoho jednoho programu IDE Integrated Development Envrironment Např.: o Borland C (C++) jen pro DOS o Borland C++ Builder o Microsoft Visual Studio o KDevelop (Linux) VS 2005 IDE Orientace a manipulace s IDE Založení projektu Okna, Připínáčky Solution explorer SE důležité přesvědčit se, že jste na program.cs ze SE Uložení, co je kde na disku Zápis ZK Doplňování kódu Code snippets: cw = Console.WriteLine() Překlad Build Solution, project rozdíl Hledání a oprava syntaktických chyb Co je výsledkem, kde to je, kdy to jde spustit (nutný.net) Nápověda MSDN Microsoft Developer Network = Nápověda Dostupná on-line na http://msdn2.microsoft.com/en-us/default.aspx 6

o Zejména http://msdn2.microsoft.com/en-us/library/kx37x362(vs.80).aspx Samostatné příklady Příklad č. 1 Napište program, který na obrazovku vytiskne adresu pana Nováka: Josef Novak Jindrisska 16 111 50, Praha 1 Adresa bude vytištěna dvakrát, tisky budou odděleny prázdným řádkem: Jednou pomocí několika příkazů (tisk každého řádku zvlášť) Podruhé pomocí jediného příkazu vyzkoušejte, co se stane, pokud do tisknutého textu vložíte řetězec \n Výstup aplikace bude vypadat jako na obrázku: 7