Lohkokaavio

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 1. lokakuuta 2021 tarkistetusta versiosta . tarkastukset vaativat 4 muokkausta .

Vuokaavio  on yleinen kaaviotyyppi (graafiset mallit ), jotka kuvaavat algoritmeja tai prosesseja, joissa yksittäiset vaiheet on kuvattu erimuotoisina lohkoina, jotka on yhdistetty sekvenssin suunnan osoittavilla viivoilla.

Algoritmikaavioiden peruselementit

Elementtejä piirrettäessä on suositeltavaa noudattaa tiukkoja kokoja, jotka määritellään kahdella arvolla a ja b . Arvo a valitaan alueelta 15, 20, 25.. mm, b lasketaan suhteesta 2⋅ a = 3⋅ b . Mitoitus on neuvoa-antava, mutta jos mitat huomioidaan, lohkokaaviot näyttävät tarkemmalta.

Toimi

Symboli näyttää minkä tahansa tiedonkäsittelytoiminnon (tietyn toiminnon tai toimintoryhmän suorittaminen, mikä johtaa tiedon merkityksen, muodon tai sijoituksen muutokseen tai sen määrittämiseen, mitä useista virtaussuunnista tulee siirtää).

Data (I/O)

Symboli edustaa dataa, tietovälinettä ei ole määritelty.

Tietojen muuntaminen prosessoitavaan muotoon (syöttö) tai käsittelyn tulosten näyttäminen (tulostus). Tämä symboli ei määritä tietovälinettä (erityisiä symboleja käytetään ilmaisemaan tietovälineen tyyppi).

Ennalta määritetty prosessi (toiminto)

Symboli näyttää ennalta määritellyn prosessin, joka koostuu yhdestä tai useammasta operaatiosta tai ohjelmavaiheesta, jotka on määritelty muualla (alirutiinissa, moduulissa). Esimerkiksi ohjelmoinnissa kutsu proseduurille tai funktiolle.

Kysymys (ehto tai ratkaisu)

Symboli edustaa päätös- tai kytkintyyppistä toimintoa, jolla on yksi tulo ja useita vaihtoehtoisia lähtöjä, joista yksi ja vain yksi voidaan aktivoida, kun on arvioitu tässä symbolissa määritellyt ehdot. Vastaavat laskentatulokset voidaan kirjoittaa näitä polkuja edustavien viivojen viereen.

Näyttää kytkimen tyyppipäätöksen tai toiminnon, jossa on yksi tulo ja kaksi tai useampia vaihtoehtoisia lähtöjä, joista vain yksi voidaan valita tämän elementin ehtojen arvioinnin jälkeen. Elementin sisäänkäynti on merkitty viivalla, joka yleensä menee elementin yläpisteeseen. Jos uloskäyntiä on kaksi tai kolme, yleensä jokainen uloskäynti on merkitty viivalla, joka tulee ulos jäljellä olevista pisteistä (sivu ja alaosa). Jos lähtöjä on enemmän kuin kolme, ne tulee esittää yhtenä rivinä, joka tulee ulos elementin yläosasta (usein alaosasta), joka sitten haarautuu. Vastaavat laskentatulokset voidaan kirjoittaa näitä polkuja edustavien rivien viereen. Ratkaisuesimerkkejä: yleisessä tapauksessa - vertailu (kolme lähtöä: >, <, =); ohjelmoinnissa ehdolliset operaattorit ( ifkaksi lähtöä: true, false) ja case(useita lähtöjä).

Limiter

Symboli edustaa syöttöä ulkoisesta ympäristöstä ja tulosta ulkoiseen ympäristöön (ohjelmakaavion alku tai loppu, ulkoinen käyttö ja tiedon lähde tai kohde).

Käytännössä seuraavat rajoittimien kuvaukset ovat järkeviä: aloitus/loppu, aloitus/pysäytys, uudelleenkäynnistys (tarkoittaa annetun vuokaavion uudelleenkäynnistystä), virhe (tarkoittaa algoritmin päättymistä virheen kanssa), poikkeus (tarkoittaa ohjelmistopoikkeus)

Kierrä

Kaksiosainen symboli edustaa silmukan alkua ja loppua. Symbolin molemmilla osilla on sama tunniste. Alustuksen, lisäyksen, lopettamisen jne. ehdot sijoitetaan symbolin alkuun tai loppuun riippuen ehtoa testaavan toiminnon sijainnista.

Esimerkki vuokaaviosta kertoimen laskemiseen silmukan avulla Esimerkki sisäkkäisistä silmukoista

Liitin

Symboli edustaa uloskäyntiä piirin osaan ja sisäänkäyntiä piirin toisesta osasta, ja sitä käytetään katkaisemaan linja ja jatkamaan sitä muualla. Vastaavien liitinmerkkien tulee sisältää sama yksilöllinen tunnus.

Algoritmin jakaminen kahteen osaan liittimien avulla

Kommentti

Symbolia käytetään lisäämään kuvailevia kommentteja tai selittäviä huomautuksia selityksen tai huomautuksen vuoksi. Kommenttisymbolin katkoviivat liittyvät vastaavaan symboliin tai voivat ympäröidä symboliryhmän. Kommenttien tai huomautusten teksti tulee sijoittaa lähelle rajoitusmuotoa.

Kommenttisymbolia tulee käyttää myös silloin, kun tietyn symbolin (esimerkiksi prosessisymbolin, datasymbolin jne.) sisään sijoitetun tekstin määrä ylittää itse tämän symbolin koon. Kommentteja käytetään yhdessä päätteiden kanssa kuvaamaan algoritmin syöttöargumentteja funktioita kuvattaessa.

Rinnakkaistoiminnot

Symboli on esitetty kahdella rinnakkaisella viivalla, jotka edustavat kahden tai useamman rinnakkaisen toiminnon ajoitusta. Jos useita operaatioita tulee rinnakkaisiin riveihin, algoritmin suoritus jatkuu vain, jos kaikki saapuvat prosessit päättyvät.

Rinnakkaistoimintoja voidaan käyttää asynkronisissa prosesseissa tai prosesseissa, joiden järjestys ei ole tärkeä. Esitetyssä esimerkissä kannattaa huomioida, että samoihin rinnakkaisiin linjoihin luotujen prosessien ei tarvitse myöskään päättyä rinnakkain.

Muiden piirielementtien kuvaus löytyy asiaankuuluvasta GOST:sta [1] . Elementtejä ovat:

  • Tallennetut tiedot
  • Asiakirja
  • Manuaalinen syöttö
  • Kartta
  • Näyttö
  • Ohjauksen siirto
  • Vaihtoehtoinen suhde kahden tai useamman merkin välillä
  • jne.

Algoritmien esitys kaavioina

Toimintojen järjestys asetetaan yhdistämällä kärjet kaareihin, jolloin voimme pitää vuokaavioita paitsi algoritmin visuaalisena tulkintana, joka on kätevä ihmisen havainnolle, myös suunnattuna graafina (ns. algoritmin graafikaavio). , GSA). Samanlaista algoritmien esitystä käytetään tiettyjä ohjausalgoritmeja toteuttavien loogisten ohjausjärjestelmien rakentamisessa , laskelmien rinnakkaistehtävissä ja niin edelleen.

Kritiikki

Yleinen ja virheellinen käytäntö on yrittää käyttää vuokaavioita havainnollistamaan algoritmia alhaisella tasolla (kooditasolla) - toisin sanoen yrittää sovittaa koodinpätkät jollain keinotekoisella kielellä kaavion lohkoihin. Tämä lähestymistapa soveltuu vain rakenteellisen lähestymistavan mukaan organisoituihin ohjelmiin, eikä se voi heijastaa esimerkiksi algoritmia, joka on toteutettu abstraktioiden vuorovaikutuksessa oliolähestymistapassa. Algoritmien, järjestelmän osien vuorovaikutuksen ja monien muiden asiaan liittyvien asioiden kuvaamiseksi on olemassa UML -merkintä. .

Muistiinpanot

  1. GOST 19.701-90. Algoritmien, ohjelmien, tietojen ja järjestelmien kaaviot. Yleissopimukset ja täytäntöönpanosäännöt . Haettu 23. toukokuuta 2007. Arkistoitu alkuperäisestä 1. kesäkuuta 2007.