Diagrama bloc a algoritmului: programe, sarcini, elemente, construcții

În lumea modernă a tehnologiei digitale, programarea reprezintă baza pentru funcționarea diferitelor computere, gadget-uri și alte echipamente electronice. Și abilitatea de a elabora rapid și corect o diagramă bloc a algoritmului este fundamentul, baza acestei științe. O astfel de schemă este un model grafic al proceselor care trebuie efectuate de echipament. Se compune din blocuri funcționale separate care efectuează diferite funcții (start / end, I / O, apel funcțional etc.).bloc diagramă a algoritmului

Algoritmul și algoritmizarea

De fapt, algoritmul este instrucțiunea obișnuită despre secvența în care este necesar să se efectueze anumite acțiuni atunci când se prelucrează datele originale în rezultatul dorit. Împreună cu acest termen, ei adesea folosesc concept de algoritmizare. Se înțelege ca un set de metode și tehnici de elaborare a unei secvențe pentru rezolvarea problemelor specifice.

Adesea algoritmul nu este folosit ca o instrucțiune pentru un calculator, ci ca o schemă pentru efectuarea oricărei acțiuni. Acest lucru vă permite să notați eficacitatea și eficacitatea acestei metode de soluționare, să corectați posibilele erori și să o comparați cu alte soluții similare chiar înainte de introducerea computerului. În plus, algoritmul este baza pentru compilarea unui program care trebuie scris într-un limbaj de programare pentru a implementa în continuare procesul de procesare a informațiilor pe un PC. Până în prezent, au fost cunoscute două modalități practice de construire a unor astfel de secvențe. Prima este o descriere verbală pas cu pas, iar a doua este o diagramă bloc a algoritmului problemei. Primul dintre acestea a fost semnificativ mai puțin răspândit. Acest lucru se datorează lipsei de vizibilitate și de verbose. A doua modalitate, dimpotrivă, este un mijloc foarte convenabil de afișare a secvenței. Este larg răspândită atât în ​​literatura de specialitate, cât și în cea științifică.elemente ale blocului schemei de algoritmi

Elemente ale diagramelor bloc

Schema de evoluție a algoritmului programului este o secvență de simboluri grafice care prescriu executarea unor operații specifice, precum și relațiile dintre ele. În interiorul fiecărei imagini sunt indicate informații despre sarcina care trebuie efectuată. Dimensiunile și configurația simbolurilor grafice, precum și ordinea de proiectare a secvenței sunt reglementate de GOST 19003-80 și GOST 19002-80.

Să luăm în considerare elementele principale ale graficului algoritmului (exemplele inscripțiilor lor sunt date în fotografie).

1. Un proces este o acțiune computațională sau o secvență de astfel de acțiuni.

2. Soluția este de a verifica condiția dată.

3. Modificare - titlul ciclului.

4. Proces predefinit - acces la procedură.

5. Document - date de imprimare și de ieșire.

6. Informații despre cardul de intrare.

7. Intrare / ieșire - Intrare / ieșire date.

8. Conector - ruptura liniilor de curgere.

9. În algoritmele auxiliare se utilizează Start / End - start, end, stop, start, intrare și ieșire.

10. Comentariu - utilizați pentru a insera inscripții explicative.



11. Fluxurile verticale și orizontale sunt direcția secvenței, linia de comunicare dintre blocuri.

12. Merge - conectarea firelor.

13. Conector interstițial - o etichetă care simbolizează trecerea la o altă foaie.Exemple de blocuri din schema de algoritmi

Reguli de redactare

Construcția diagramă a algoritmului se realizează în conformitate cu cerințele specifice prevăzute de GOST. De exemplu, atunci când conectați simbolurile grafice, se utilizează numai linii orizontale sau verticale. Concentrările de la dreapta la stânga și de jos în sus sunt marcate cu săgeți. Este posibil ca alte linii să nu fie etichetate. Distanța dintre fluxurile paralele nu trebuie să fie mai mică de trei milimetri, iar între elementele rămase - nu mai puțin de cinci milimetri. Dimensiunile blocurilor trebuie să fie mai mari de cinci. Raportul dintre orizontala si verticala a simbolului grafic este de 1,5. Uneori este permisă egală cu două. Pentru facilitarea descrierii, simbolurile grafice trebuie să fie numerotate. Prin natura conexiunilor, se disting tipurile de diagrame bloc ale algoritmului unei structuri liniare, ciclice și ramificate.elaborați o diagramă bloc a algoritmului

Variabile, constante și celule de memorie

Pentru o mai bună înțelegere a principiului algoritmului, se poate considera un automat automat. Se compune dintr-o memorie formată din celule - un procesor de scriere / citire a capului. Care este principiul funcționării unui astfel de dispozitiv? Capul, primind o comandă de la procesor, realizează scrierea de date într-o celulă sau citește o constantă. În cel mai simplu caz, acesta va fi un număr aritmetic. În plus, constantele pot fi structurile de date, un șir de caractere etc. O variabilă este o celulă de memorie în care sunt stocate informații. În timpul executării algoritmului, pot fi scrise diferite date într-o astfel de celulă. Pe acest principiu, sunt construite calculatoare personale și alte electronice. Algoritmul pentru executarea unei sarcini este un set de instrucțiuni pentru citirea sau scrierea informațiilor în aceste celule de memorie.

matrice

Arrays sunt un alt tip de variabile indexate. De fapt, aceasta este o colecție de celule, care sunt unite printr-o notație comună. Arrays disting două-dimensionale, tridimensionale, etc Cel mai simplu dintre ele este o serie de celule consecutive. O astfel de matrice are propriul nume. Fiecare element are propriul număr de index. O constantă scrisă într-o celulă este numită element de matrice.

Tipul bidimensional seamănă cu o matrice în aranjamentul elementelor sale. Celulele din această matrice sunt caracterizate de doi indici (aceasta seamănă cu o placă de șah cu numerotarea celulelor). Prin același principiu, se realizează structuri tridimensionale și mai multe.bloc diagramă a algoritmului programului

Algoritmi liniare

Acest tip de secvență de diagramă (exemple sunt prezentate în acest articol) se caracterizează prin execuția de sus în jos de sus în jos. În acest caz, mașina efectuează operațiile prescrise pas cu pas. Fiecare acțiune este procesată de procesor. În plus față de calcule, el, dacă este necesar, comandă un cap de scriere / lectură unde și ce să scrie și să citească. Rezultatul final este scris în celulele de memorie, fiecare dintre ele având propriul index și stocându-și constanta.

Branching Algorithms

În practică, tipul liniar este extrem de rar. Adesea, este necesară organizarea unei secvențe care, în funcție de condițiile stabilite, curge prin una sau alta ramură. O diagramă a unui algoritm de tip ramificat conține elementul "Solution", prin care se verifică o anumită condiție, iar mai multe dintre ele, cu atât mai multe ramuri ale secvenței.bloc diagramă a algoritmului problemei

Diagrame de algoritmi: exemple

Luați în considerare modul în care funcționează algoritmul ramificat. Ca exemplu, luați funcția: z = y / x. Se poate vedea din condiția că această ecuație are o restricție - este imposibil să se împartă cu zero. Deci, trebuie să excludeți această soluție și să îi avertizați pe utilizator despre eroare. Mai întâi, se compilează o diagramă bloc a algoritmului. Acesta va consta din șapte blocuri. Primul simbol grafic este "Start", al doilea este "Enter", aici trebuie să specificați valorile lui X și Y. Apoi este urmat blocul "Decision", în care condiția este verificată: X = 0. În acest caz, automatul verifică celula cu o constantă, dacă valoarea de intrare coincide cu ea, atunci soluția algoritmului va merge de-a lungul ramurii "Da". În acest caz, controlul este transferat în cel de-al patrulea bloc, iar mașina dă o "eroare", lucrarea se încheie cu cel de-al șaptelea caracter "End". Dacă rezultatul testului este negativ, atunci în cel de-al cincilea simbol grafic se face procesul de divizare și se determină valoarea lui Z. În al șaselea bloc, rezultatul este afișat pe ecran.

Algoritmi ciclici

Adesea, atunci când rezolvăm probleme, este necesar să repetăm ​​execuția unei operații pentru aceeași dependență pentru diferite valori ale variabilelor și să facem treceri repetate prin aceeași secțiune a circuitului. Astfel de zone sunt numite cicluri, iar algoritmul este numit ciclic. Utilizarea acestei metode reduce în mod semnificativ succesiunea în sine. Algoritmi ciclici este comună împărțirea în două tipuri: cu un număr anterior cunoscut și cunoscut anterior anterior.

Un exemplu de soluție de algoritmi cu ramificație

Luați în considerare un exemplu în care este dată o diagramă bloc a unui algoritm cu un număr necunoscut anterior de pași. Pentru a face acest lucru, trebuie să rezolvăm problema indicării celui mai mic număr de termeni din serie numere naturale, suma cărora depășește numărul K. O astfel de diagramă bloc a algoritmului constă în opt simboluri. Mai întâi, introducem valoarea numărului K (N2). Apoi, în blocul 3, variabila Π obține valoarea "unu", ceea ce înseamnă că începe numărarea numerelor naturale. Și suma cumulativă С la început primește valoarea "zero". Controlul suplimentar este transferat la al cincilea bloc, unde comanda este executată: C = C + P. Adică valorile celulelor C și II sunt însumate și rezultatul este suprascris în C. După adăugarea primului termen al acestei secvențe în blocul 6, condiția este verificată - suma depășește numărul specificat K? Dacă condiția nu este îndeplinită, atunci controlul este transferat în al patrulea bloc, unde unul este adăugat la variabila P și tranziția este din nou făcută să blocheze # 5. Această procedură va apărea până când condiția: C> K, adică suma acumulată depășește valoarea specificată. Variabila II este contorul de cicluri. Apoi, există o tranziție la numărul blocului 7, unde sunt imprimate rezultatele lucrării.algoritmul este specificat de diagrama bloc

Algoritmi care conțin structuri de buclă imbricate

Adesea, în soluția algoritmică a problemei, apare nevoia de a crea un ciclu care să conțină un alt ciclu în corpul său. Aceasta este considerată normă. Astfel de elemente sunt numite structuri de bucla imbricate. Ordinea lor poate fi destul de mare. Se determină prin metoda prin care se ajunge la rezolvarea problemei necesare. De exemplu, atunci când procesează gama unidimensională, ca regulă, o diagramă bloc a algoritmului este construită fără cicluri de încorporare. Și totuși, într-o serie de cazuri, atunci când rezolvăm probleme similare, devine necesar să alegem exact o astfel de variantă a soluției. Trebuie remarcat faptul că toate buclele imbricate, inclusiv prima (externă), trebuie să conțină contoare cu nume diferite. În afara ciclului lor, ele pot fi folosite ca variabile obișnuite.

Algoritmi auxiliari

Acest tip de secvență este un analog al subrutinei lingvistice. Algoritmul auxiliar are un nume și parametri, care se numesc formali. Numele este dat pentru ao deosebi, printre altele, iar parametrii îndeplinesc rolul funcțiilor matematice de ieșire și de intrare. Acestea sunt alese astfel încât să se epuizeze întregul set de cantități necesare. Adesea, același parametru formal se dovedește a fi atât intrare cât și ieșire. De exemplu, într-un astfel de algoritm, o matrice poate fi alimentată la intrare pentru procesare. Și în partea rezultată, ea poate fi reprezentată într-o formă modificată ca parametru de ieșire. Printre algoritmii tipului auxiliar se disting funcțiile și procedurile.

Descompunerea algoritmului

Acesta este definit ca extinderea schemei generale a algoritmului pe suport (funcțiile și procedurile) și capul. Această metodă este foarte simplă atunci când algoritmul este specificat printr-o diagramă bloc - în primul rând, separă secțiunile responsabile pentru lucrarea principală. Cele mai complexe etape sunt formalizate ca funcții și proceduri de nivel superior. Apoi ele sunt împărțite în zone elementare de nivel inferior. Aici principiul "de la complex la simple". Aceasta se face până când algoritmul este împărțit în cele mai simple elemente. În mod tipic, soluția de descompunere a secvenței constă din trei etape principale: introducerea datelor, sortați o matrice, ieșirea matricei sortate. Prima și ultima etapă, datorită elementarității lor, nu trebuie să fie descompuse, deci ele sunt realizate în algoritmul capului. Dar cel de-al doilea este un fragment independent foarte complex al calculelor, deci este de obicei luat ca un bloc separat. etape de sortare, la rândul său, împărțit în două părți: necesitatea unei proceduri de stabilire (N-1) ori mai mare de trecere a unei matrice predeterminate și găsirea cel mai mic element din matrice fragment, urmată de rearanjare a porțiunii inițiale a elementului său. Deoarece ultima etapă este repetată de mai multe ori, ea este formalizată ca o procedură separată.

Distribuiți pe rețelele sociale:

înrudit
Ce sunt algoritmii și de ce sunt necesare?Ce sunt algoritmii și de ce sunt necesare?
Diagrama funcțională: evidențiazăDiagrama funcțională: evidențiază
Cum se creează o diagramă. Schema bloc a programului, matriceCum se creează o diagramă. Schema bloc a programului, matrice
Algoritmi liniare - schema, structura și computațiaAlgoritmi liniare - schema, structura și computația
Conceptul algoritmului și proprietățile algoritmului. Tipuri de algoritmiConceptul algoritmului și proprietățile algoritmului. Tipuri de algoritmi
Algoritmul Kruskal - construirea scheletului optimAlgoritmul Kruskal - construirea scheletului optim
Diagrama IDEF0: exemple și reguli de construcțieDiagrama IDEF0: exemple și reguli de construcție
Algoritm: concept, proprietăți, structură și tipuriAlgoritm: concept, proprietăți, structură și tipuri
Informatica. Bazele de algoritmizare și programareInformatica. Bazele de algoritmizare și programare
Programare. Construcții algoritmice de bazăProgramare. Construcții algoritmice de bază
» » Diagrama bloc a algoritmului: programe, sarcini, elemente, construcții