Každodenný život každého človeka pozostáva zriešenie obrovského množstva problémov rôznej zložitosti v práci alebo pri štúdiu. Niektoré úlohy sú také jednoduché, že keď ich vykonávame, robíme určité činnosti automaticky, bez toho, aby sme premýšľali. Riešenie akéhokoľvek problému, dokonca aj toho najjednoduchšieho, sa zvyčajne vykonáva postupne v niekoľkých krokoch. Tento druh postupnosti pri riešení problémov sa nazýva algoritmus. Dnes sa pozrieme na to, čo sú to lineárne algoritmy, ako je znázornená ich štruktúra, ako sa riešia a programujú.
Algoritmický jazyk
Tento koncept je presnou inštrukciou pre interpreta, aby vykonal určitú postupnosť akcií, ktorá je zameraná na vyriešenie úlohy.
Tento jazyk je prostriedkom na popis algoritmov, ktoré sú zvyčajne orientované na používateľa.
Ak hovoríme počítačovým jazykom, potomoznačuje presný predpis, ktorý definuje výpočtový proces. To zase vedie od počiatočných údajov, ktoré sa líšia, k počiatočnému výsledku.
Vývoj algoritmu je pomerne zložitý a časovo náročný proces. Je to technika na zostavenie (vývoj) sledu akcií určených na riešenie problémov pomocou počítača.
Vlastnosti algoritmu
Medzi vlastnosti patrí:
- konečnosť – spočíva v dokončení práce celého algoritmu v určite konečnom počte etáp (krokov);
- určitosť (jednoznačnosť) – predstavuje jedinečnosť výkladu pravidiel vykonávania úkonov, ako aj poradie ich vykonávania;
- efektívnosť – dosiahnutie požadovaného výsledku v ľubovoľnom konečnom počte krokov;
- zrozumiteľnosť – pokyny musia byť interpretovi zrozumiteľné;
- hromadný charakter - algoritmy musia byť schopné riešiť celú triedu špecifických problémov so všeobecným vyjadrením problému.
Lineárne algoritmy. Informatika 9. ročník
Už sme sa pozreli na definície a vlastnosti tohto pojmu. Teraz si povedzme o jeho typoch:
- lineárny;
- vetvenie;
- s cyklom.
Zaujímajú nás lineárne algoritmy. Čo sú zač? Obsahujú príkazy, ktoré je potrebné vykonať jeden po druhom v prehľadnom poradí.
Lineárna štruktúra algoritmu môže byť napísaná verbálnou a grafickou formou.
Uveďme príklad, napísaný vo verbálnej forme. Takže úloha: priprav sa do školy. Riešenie:
- Štart.
- Postaviť sa.
- Vykonajte nejaké cvičenie.
- Umyte sa.
- Obliecť sa.
- Raňajkovať.
- Zbaľte si kufrík.
- Koniec.
Grafická podoba vyššie uvedeného procesu bude nasledovná:
Lineárny algoritmus ako vývojový diagram
Bloková schéma je ilustračnáobrázok algoritmu, v ktorom je každá jednotlivá fáza znázornená pomocou blokov prezentovaných vo forme rôznych geometrických tvarov. Okrem toho je spojenie medzi fázami (inými slovami, postupnosť vykonávania krok za krokom) označené pomocou šípok, ktoré spájajú figúrky (bloky). Každý blok je doplnený nápisom. Pre typické akcie v lineárnom algoritme sa používajú nasledujúce geometrické obrazce:
- Blok začiatku a konca algoritmu. Na bloku je nápis „začiatok“ alebo „koniec“.
- Blok vstupu/výstupu dát.Tento blok je znázornený ako rovnobežník. Sú na ňom umiestnené tieto nápisy: „vstup“, „výstup“, „tlač“. Sú tiež sprevádzané zoznamom vstupných alebo výstupných premenných.
- Aritmetický blok alebo rozhodovací blok. Zodpovedá obdĺžniku. Blok by mal mať nápis: „operácia“, „skupina operácií“.
Pomocou takýchto blokových schém je znázornené riešenie lineárnych algoritmov. Ďalej si povieme niečo o vlastnostiach priraďovania hodnôt.
Lineárne výpočtové algoritmy
Hlavná elementárna činnosť vo výpočtovej technikeAlgoritmus je priradenie špecifickej hodnoty premennej. V prípade, že je hodnota konštanty určená typom jej zápisu, hodnota premennej získa konkrétnu hodnotu výlučne ako výsledok priradenia. Dá sa to urobiť dvoma spôsobmi: pomocou príkazu priradenia; pomocou vstupného príkazu.
Príklad riešenia lineárneho algoritmu
Uveďme príklad popisu pravidiel delenia obyčajných zlomkov pomocou lineárneho algoritmu, ktoré majú v školských učebniciach nasledujúci obsah:
- čitateľ zlomku 1 musí byť vynásobený menovateľom zlomku 2;
- menovateľ zlomku 1 musí byť vynásobený čitateľom zlomku 2;
- musíte si zapísať zlomok, v ktorom je čitateľ výsledkom dokončenia kroku 1 a menovateľ je výsledkom dokončenia kroku 2. Algebraická forma tohto pravidla je nasledovná:
a/b: c/d=(a*d)/(b*d)=m/n.
Poďme teda zostaviť algoritmus na delenie zlomkov pre počítač.Aby sme sa nemýlili, použijeme rovnaký zápis premenných ako vo vzorci uvedenom vyššie. a, b, c, d – zdrojové údaje vo forme celočíselných premenných. Výsledkom budú aj celočíselné hodnoty. Riešenie v algoritmickom jazyku bude nasledovné:
alg Delenie zlomkov
začiatok
neporušený a, b, c, d, m, n
vstup a, b, c, d
m:= a * d
n:= b * c
výstup m, n
kon
Grafická podoba riešenia
Schéma lineárneho algoritmu opísaného vyššie vyzerá takto:
Príkaz priradenia hodnoty má nasledujúci formát:
Premenná:=výraz.
Znak „:=“ sa číta ako priradiť.
Priradenie je príkaz, ktorý počítač potrebuje na vykonanie nasledujúcich akcií:
- výpočty výrazov;
- priradenie výslednej hodnoty premennej.
Vyššie uvedený algoritmus obsahuje dva príkazy ako priradenie. V blokovej schéme musí byť priraďovacia inštrukcia napísaná v obdĺžniku nazývanom výpočtový blok.
Keď sú opísané lineárne algoritmy, nie je tam nič konkrétnenutnosť prísneho dodržiavania prísnych pravidiel pri písaní výrazov. Môžete ich napísať pomocou obvyklého matematického formulára. Koniec koncov, toto nie je striktná syntax programovacieho jazyka.
V uvedenom príklade algoritmu je tiež vstupný príkaz:
Zadajte a, b, c, d.
Vstupný príkaz v blokovej schéme je zapísaný vparalelogram, teda vo vstupno-výstupnom bloku. Vykonaním tohto príkazu procesor preruší činnosť, kým používateľ nevykoná určité akcie. Konkrétne: používateľ musí zadať vstupné premenné (ich hodnoty) na vstupnom zariadení (klávesnici) a stlačiť Enter, ktorý funguje ako kláves enter. Je dôležité, aby boli hodnoty zadané v rovnakom poradí ako zodpovedajúce premenné umiestnené vo vstupnom zozname.
Lineárny algoritmus. Jeho programovanie
Ako už bolo spomenuté na začiatku článku, lineárne programy môžu obsahovať nasledujúce vyhlásenia:
- zadanie;
- vstup;
- výkon.
To znamená, že pomocou uvedených operátorov sa programujú lineárne algoritmy.
Takže operátor priradenia v programovacom jazyku je napísaný takto:
NECH A = B, kde A je premenná, B je výraz. Napríklad A = Y + 20.
Vstupný príkaz vyzerá takto:
INPUT, napríklad: INPUT C
Operátor pre výstup údajov, hodnôt, je napísaný v nasledujúcom tvare:
TLAČIŤ. Napríklad PRINT S.
Uveďme si jednoduchý príklad. Musíme napísať program, ktorý nájde súčet čísel A a B zadaných z klávesnice.
V programovacom jazyku dostaneme program, ktorého text je uvedený nižšie.
Vstupné a výstupné operátory v programovacom jazyku Pascal
Pascal neposkytuje špeciálne operátory,označujúce vstupné alebo výstupné operácie, ktoré využívajú lineárne algoritmy. V programoch sa informácie vymieňajú pomocou vstavaných postupov. Keďže nie je potrebný predbežný popis štandardného postupu, je dostupný každému programu, ktorý obsahuje jeho volanie. Spomínaný názov postupu tiež nie je žiadnym vyhradeným slovom.
Pri zadávaní údajov sa takéto operátory používajú na odkazovanie na štandardný postup zadávania údajov, ktorý je už zabudovaný v programe.
Čítanie (A, B, C), kde A, B, C sú premenné, ktoré je potrebné zadať do pamäte RAM na zapamätanie.
Readlnn (x1, y, x2) – po ukončení zadávania sa kurzor presunie na začiatok nového riadku.
Readlnn; - označuje, že čakáte na stlačenie tlačidla „Enter“. Zvyčajne sa tento príkaz vkladá do textu pred posledný „Koniec“, aby sa uložili výsledky vykonávania programu na obrazovke s obsahom.
Údaje sa zobrazujú na obrazovke monitora pomocou nasledujúcich operátorov:
Zápis (A, B, C) – zadaním hodnôt A, B, C v jednom riadku kurzor neopustí aktuálny riadok.
Writeln (z, y, z2) – po ukončení výstupu hodnôt sa kurzor na tejto pozícii presunie na nový riadok.
Writeln; - označuje preskočenie jedného riadku a prechod na začiatok nového.
Pomocou takýchto jednoduchých operátorov sa údaje zadávajú a vydávajú v jazyku Pascal.