Blokové schéma algoritmu: programy, úkoly, prvky, konstrukce
V moderním světě digitálních technologií je programování základem pro provoz různých počítačů, gadgetů a dalších elektronických zařízení. A schopnost rychle a správně vypracovat blokové schéma algoritmu je základem, základem této vědy. Taková schéma je grafickým modelem procesů, které musí zařízení provádět. Skládá se ze samostatných funkčních bloků, které provádějí různé funkce (start / end, I / O, volání funkce apod.).
Obsah
- Algoritmus a algoritmizace
- Prvky blokových diagramů
- Pravidla kreslení
- Proměnné, konstanty a paměťové buňky
- Pole
- Lineární algoritmy
- Vetvící algoritmy
- Vývojové diagramy algoritmů: příklady
- Cyklické algoritmy
- Příklad řešení rozvětveného algoritmu
- Algoritmy obsahující vnořené struktury smyček
- Pomocné algoritmy
- Rozklad algoritmů
Algoritmus a algoritmizace
Algoritmus je ve skutečnosti obvyklým pokynem o pořadí, ve kterém je nutné provést určité kroky při zpracování původních dat v požadovaném výsledku. Spolu s tímto termínem často používají koncept algoritmizace. Rozumí se jako soubor metod a postupů pro sestavení sekvence pro řešení konkrétních problémů.
Často se algoritmus nepoužívá jako instrukce pro počítač, ale jako schéma pro provádění jakýchkoli akcí. To umožňuje zjistit efektivitu a účinnost této metody řešení, opravit možné chyby a porovnat je s jinými podobnými řešeními ještě před úvodem do počítače. Kromě toho je algoritmem základ pro sestavení programu, který musí být zapsán v programovacím jazyce, aby se dále prováděla proces zpracování informací na PC. Dosud jsou známy dva praktické způsoby konstrukce takových sekvencí. První je verbální popis krok za krokem a druhá je bloková schéma algoritmu problému. První z nich byla výrazně méně rozšířená. To je způsobeno nedostatkem viditelnosti a upřímnosti. Druhá cesta, naopak, je velmi vhodným prostředkem pro zobrazení sekvence. Je široce distribuován ve vzdělávací i vědecké literatuře.
Prvky blokových diagramů
Vývojový diagram programového algoritmu je sekvence grafických symbolů, které předepisují provádění konkrétních operací, stejně jako vztahy mezi nimi. Uvnitř každé takové obrazové informace jsou uvedeny informace o úkolu, který má být proveden. Velikost a konfigurace grafických symbolů, stejně jako pořadí sekvenčního uspořádání, jsou upraveny normami GOST 19003-80 a GOST 19002-80.
Uvažujme o hlavních prvcích vývojového diagramu algoritmu (příklady jejich nápisů jsou uvedeny na fotografii).
1. Proces je výpočetní akce nebo sekvence takových akcí.
2. Řešením je zkontrolovat daný stav.
3. Modifikace - název cyklu.
4. Předdefinovaný proces - přístup k postupu.
5. Dokument - tisková a výstupní data.
6. Informace o vstupu karty.
7. Vstup / výstup - vstup / výstup dat.
8. Konektor - prasknutí průtokových vedení.
9. Spuštění / ukončení - spuštění, ukončení, zastavení, spuštění, vstup a výstup jsou použity v pomocných algoritmech.
10. Komentář - použijte k umístění vysvětlující nápisy.
11. Vertikální a vodorovné toky jsou směry posloupnosti, linie komunikace mezi bloky.
12. Sloučení - připojení závitů.
13. Intersticiální konektor - štítek, který symbolizuje přechod na jiný list.
Pravidla kreslení
Konstrukce vývojového diagramu algoritmu se provádí podle zvláštních požadavků předepsaných GOST. Například při připojení grafických symbolů se používají pouze vodorovné nebo svislé čáry. Proudy zprava doleva a zdola nahoru jsou označeny šipkami. Jiné řádky nemusí být označeny. Vzdálenost mezi paralelními proudy by neměla být menší než tři milimetry a mezi zbývajícími prvky - nejméně pět milimetrů. Rozměry bloků musí být násobkem pěti. Poměr horizontální k vertikále grafického symbolu je 1,5. Někdy je povoleno rovnat se dvěma. Pro usnadnění popisu by měly být grafické symboly očíslovány. Vzhledem k povaze spojů jsou rozlišeny typy blokových diagramů algoritmu lineární, cyklické a větvící struktury.
Proměnné, konstanty a paměťové buňky
Pro lepší pochopení principu algoritmu lze uvažovat o jednoduchém automatu. Skládá se z paměti obsahující buňky - procesor pro zápis / čtení hlavy. Jaký je princip fungování takového zařízení? Hlava, po obdržení příkazu od procesoru, provádí zápis dat do buňky nebo čte konstantu. V nejjednodušším případě to bude aritmetické číslo. Kromě toho mohou být konstanty datové struktury, řetězec znaků atd. Proměnná je paměťová buňka, ve které jsou uloženy informace. Během provádění algoritmu mohou být v takové buňce zapsány různé údaje. Na tomto principu jsou postaveny osobní počítače a další elektronika. Algoritmus pro provádění úkolu je sada instrukcí pro čtení nebo zápis informací do těchto paměťových buněk.
Pole
Pole jsou další druh indexovaných proměnných. Ve skutečnosti se jedná o sbírku buněk, které jsou spojeny společnou notací. Polomery rozlišují dvourozměrné, trojrozměrné atd. Nejjednodušší z nich je řada po sobě jdoucích buněk. Takové pole má své vlastní jméno. Každý prvek má své vlastní indexové číslo. Konstanta napsaná v buňce se nazývá prvek pole.
Dvourozměrný typ se podobá matici v uspořádání prvků. Buňky v tomto poli jsou charakterizovány dvěma indexy (toto se podobá šachovnici s číslováním buněk). Stejným principem jsou realizovány trojrozměrné a více struktur.
Lineární algoritmy
Tento typ sekvence vývojového diagramu (příklady jsou uvedeny v tomto článku) je charakterizován prováděním shora dolů shora dolů. V takovém případě stroj provádí předepsané operace krok za krokem. Každá akce zpracovává procesor. Kromě výpočtů mu v případě potřeby objednává písemnou / čtecí hlavu kde a co zapisovat a jak číst. Konečný výsledek je zapsán do paměťových buněk, z nichž každý má svůj vlastní index a ukládá jeho konstantu.
Vetvící algoritmy
V praxi je lineární typ extrémně vzácný. Často je nutné uspořádat sekvenci, která v závislosti na nastavených podmínkách protéká jednou nebo jinou větví. Vývojový diagram rozvětveného algoritmu obsahuje prvek "Řešení", kterým se kontroluje určitá podmínka, a čím více je, tím více větví sekvence.
Vývojové diagramy algoritmů: příklady
Zvažte, jak funguje rozvětvený algoritmus. Jako příklad použijte funkci: z = y / x. Z této podmínky lze vidět, že tato rovnice má jedno omezení - nelze je rozdělit nulou. Takže musíte vyloučit toto řešení a upozornit uživatele na chybu. Nejprve je sestaven blokový diagram algoritmu. Skládá se ze sedmi bloků. První grafický symbol je "Start", druhý je "Enter", zde musíte zadat hodnoty X a Y. Poté následuje blok "Rozhodnutí", ve kterém je podmínka zaškrtnutá: X = 0. V tomto případě automat kontroluje buňku s konstantní hodnotou, pokud se vstupní hodnota shoduje s ní, pak řešení algoritmu bude probíhat podél větve "Ano". V takovém případě je ovládací prvek přenesen do čtvrtého bloku a stroj dává "chybu", práce končí v sedmém znaku "Konec". Je-li výsledek testu negativní, pak v pátém grafickém symbolu se provede dělení a hodnota Z je určena. V šestém bloku je výsledek zobrazen na obrazovce.
Cyklické algoritmy
Často při řešení problémů je nutné opakovat provádění operace pro stejnou závislost pro různé hodnoty proměnných a opakované procházení stejnou částí obvodu. Takové oblasti se nazývají cykly a algoritmus se nazývá cyklický. Použití této metody výrazně snižuje sekvenci samotnou. Cyklické algoritmy je běžné rozdělit na dva typy: s dříve neznámým a dříve známým počtem takových průchodů.
Příklad řešení rozvětveného algoritmu
Zvažte příklad, ve kterém je uveden blokový diagram algoritmu s dosud neznámým počtem průchodů. Abychom toho dosáhli, musíme vyřešit problém s uvedením nejmenšího počtu pojmů v sérii přirozená čísla, jehož součet přesahuje číslo K. Takový blokový diagram algoritmu se skládá z osmi symbolů. Nejprve uvedeme hodnotu čísla K (N2). Pak v bloku 3 proměnná Π získá hodnotu "jedna", což znamená, že začíná počítání přirozených čísel. A kumulativní suma С na začátku získává hodnotu "nula". Další kontrola je přenesena do pátého bloku, kde je příkaz spuštěn: C = C + P. To znamená, že hodnoty buněk C a II jsou součtem a výsledek je přepsán v C. Po přidání prvního semestru této sekvence v bloku 6 je podmínka zkontrolována - součet přesáhne zadané číslo K? Pokud není podmínka splněna, pak je řízení přeneseno do čtvrtého bloku, kde je přidána hodnota proměnné P a přechod je znovu proveden na bloku # 5. Tento postup dojde až do stavu: C> K, to znamená, že kumulované množství překročí zadanou hodnotu. Proměnná II je počítadlo cyklu. Pak je přechod na blok číslo 7, kde jsou vytištěny výsledky práce.
Algoritmy obsahující vnořené struktury smyček
Často v algoritmickém řešení problému vzniká potřeba vytvořit cyklus, který obsahuje další cyklus v jeho těle. Toto je považováno za normu. Takové prvky se nazývají vnořené struktury smyček. Jejich pořadí může být poměrně velké. Je určena metodou, kterou je dosaženo řešení potřebného problému. Například při zpracování jednorozměrné pole, Bloková schéma algoritmu je zpravidla konstruována bez zapojení cyklů. A přesto v řadě případů při řešení podobných problémů je nutné zvolit přesně takovou variantu řešení. Je třeba poznamenat, že všechny vnořené smyčky, včetně první (externí), musí obsahovat čítače s různými názvy. Mimo jejich cyklu mohou být použity jako běžné proměnné.
Pomocné algoritmy
Tento typ posloupnosti je analogickým jazykovým podprogramem. Pomocný algoritmus má jméno a parametry, které se nazývají formální. Název pro odlišení mezi ostatními, a parametry role výstupem a vstupem matematických funkcí. Jsou vybírány tak, aby byl vyčerpán celý soubor potřebných množství. Často se stává, že stejný formální parametr je vstup i výstup. Například v takovém algoritmu může být vstupní pole pro zpracování zpracováno pole. A ve výsledné části může být reprezentována ve změněné podobě jako výstupní parametr. Mezi algoritmy pomocného typu se rozlišují funkce a postupy.
Rozklad algoritmů
Je definován jako rozšíření obecného režimu algoritmu na podporu (funkcí a postupů) a hlavy. Tato metoda je velmi jednoduchá, když je algoritmus vzhledem blokové schéma - nejprve izolovat její část, jsou zodpovědné za většinu práce. Nejkomplexnější etapy jsou formalizovány jako funkce a postupy horní úrovně. Pak jsou rozděleny do nízkopodlažních elementárních oblastí. Zde platí princip "od komplexních po jednoduché". To se provádí, dokud se algoritmus nerozdělí nejjednodušší prvky. Řešení rozkladu sekvence se obvykle skládá ze tří hlavních kroků: zadávání dat, třídit pole, výstup tříděného pole. První a poslední etapy, protože jejich prostě nepotřebují rozšíření, takže se představí v hlavním algoritmu. Ale druhý je velmi složitý nezávislý fragment výpočtů, takže je obvykle vyjmuta jako samostatný blok. třídicí stupně, pak rozdělena do dvou částí: potřeby řízení pracovních míst (N-1) násobně průchodu předem dané sestavě a nalezení nejmenší prvek pole fragmentu následným přesmykem k počáteční části jeho prvku. Protože se poslední etapa opakuje mnohokrát, je formalizována jako samostatný postup.
- Vlastnosti a metody záznamu algoritmů
- Co jsou algoritmy a proč jsou potřebné?
- Funkční schéma: upozorňuje
- Jak vytvořit vývojový diagram. Blokový diagram programu, pole
- Lineární algoritmy - schéma, struktura a výpočet
- Základní typy a příklady cyklických algoritmů
- Koncept algoritmu a vlastnosti algoritmu. Druhy algoritmů
- Algoritmus: koncept, vlastnosti, struktura a typy
- Informatika. Základy algoritmizace a programování
- Programování. Základní algoritmické konstrukce
- Metody popisování algoritmů a typů algoritmů
- Tabulační funkce: jak psát program?
- Druhy algoritmů v informatice: příklady
- Stupně řešení problémů na počítači a jejich charakteristiky
- Pomocí funkce jаvascript setTimeout ()
- Definice, vlastnosti a typy algoritmů
- Dynamické programování, základní principy
- Řešení problémů s programováním. Cyklický algoritmus
- Populární metody pro seskupování prvků pole: třídění podle vložení a použití klíče
- Algoritmizace je proces konstrukce algoritmu pro řešení problému. Algoritmus a algoritmizace v…
- Třídící algoritmy tak, jak jsou