/ / Blokschema van het algoritme: programma's, taken, elementen, constructie

Algoritme blokschema: programma's, taken, elementen, constructie

In de moderne wereld van digitale technologieprogrammeren is de basis voor de werking van verschillende computers, gadgets en andere elektronische apparatuur. En het vermogen om snel en correct een blokschema van een algoritme op te stellen is de basis, de basis van deze wetenschap. Zo'n diagram is een grafisch model van de processen die door de apparatuur moeten worden uitgevoerd. Het bestaat uit afzonderlijke functionele blokken die verschillende doelen vervullen (start / einde, I / O, functieaanroepen, enz.).

stroomdiagram

Algoritme en algoritme

In feite is het algoritme een eenvoudige instructie overin welke volgorde het nodig is om bepaalde acties uit te voeren bij het verwerken van de initiële gegevens tot het gewenste resultaat. Naast deze term wordt vaak het concept van algoritmische analyse gebruikt. Het wordt opgevat als een reeks methoden en technieken voor het samenstellen van een reeks voor het oplossen van specifieke problemen.

Vaak wordt het algoritme niet gebruikt alsinstructies voor een computer, maar als een diagram voor het uitvoeren van eventuele acties. Hierdoor kunnen we de effectiviteit en efficiëntie van deze oplossing opmerken, mogelijke fouten corrigeren en deze ook vergelijken met andere vergelijkbare oplossingen, zelfs voordat we de computer betreden. Bovendien vormt het algoritme de basis voor het samenstellen van een programma dat in een programmeertaal moet worden geschreven om het informatieverwerkingsproces op een pc verder te implementeren. Tot op heden zijn twee praktische manieren bekend geworden om dergelijke sequenties te construeren. De eerste is een stapsgewijze verbale beschrijving en de tweede is een stroomschema van het probleemalgoritme. De eerste is veel minder wijdverspreid. Dit komt door het gebrek aan duidelijkheid en uitgebreidheid. De tweede methode is daarentegen een erg handig middel om een ​​reeks weer te geven. Het wordt veel gebruikt in zowel educatieve als wetenschappelijke literatuur.

stroomdiagramelementen

Elementen van blokdiagrammen

Het blokschema van het programma-algoritme iseen reeks grafische symbolen die de uitvoering van specifieke bewerkingen voorschrijven, evenals de verbindingen daartussen. Elke afbeelding bevat informatie over de uit te voeren taak. De afmetingen en configuratie van grafische symbolen, evenals de volgorde van registratie van de reeksen, worden gereguleerd door GOST 19003-80 en GOST 19002-80.

Overweeg de belangrijkste elementen van het stroomdiagram van het algoritme (de foto toont voorbeelden van hun stijl).

1. Proces is een computationele actie of een opeenvolging van dergelijke acties.

2. Oplossing - het controleren van een bepaalde toestand.

3. Wijziging - cycluskop.

4. Vooraf gedefinieerd proces - oproep tot procedure.

5. Document - afdrukken en gegevensuitvoer.

6. Ponskaart - informatie-invoer.

7. Invoer / uitvoer - invoer / uitvoer van gegevens.

8. Connector - onderbreking van stroomleidingen.

9. Start / Einde - start, einde, stop, start, ingang en uitgang worden gebruikt in hulpalgoritmen.

10. Commentaar - wordt gebruikt om verklarende labels te plaatsen.

11. Verticale en horizontale stromen - volgorde richting, communicatielijn tussen blokken.

12. Samenvoegen - stromen samenvoegen.

13. Interstitiële connector - een teken dat de overgang naar een ander blad symboliseert.

stroomdiagram voorbeelden

Inschrijvingsregels

De constructie van een blokschema van het algoritme wordt uitgevoerd doorspecifieke vereisten voorgeschreven door GOST. Bij het verbinden van grafische symbolen worden bijvoorbeeld alleen horizontale of verticale lijnen gebruikt. Stromen die van rechts naar links en van onder naar boven zijn gericht, zijn noodzakelijkerwijs gemarkeerd met pijlen. Andere lijnen zijn mogelijk niet gemarkeerd. De afstand tussen parallelle stromen mag niet minder zijn dan drie millimeter en tussen de rest van de elementen - minimaal vijf millimeter. Blokgroottes moeten een veelvoud van vijf zijn. De horizontale / verticale verhouding van het grafische symbool is 1,5. Soms is gelijk aan twee toegestaan. Om de beschrijving te vergemakkelijken, moeten grafische symbolen worden genummerd. Door de aard van de verbindingen worden de soorten blokschema's van het algoritme van lineaire, cyclische en vertakkende structuren onderscheiden.

maak een stroomschema

Variabelen, constanten en geheugenlocaties

Voor een beter begrip van het principe van het algoritmeu kunt de eenvoudigste automaat overwegen. Het bevat een geheugen dat uit cellen bestaat; schrijf / lees hoofd; CPU. Wat is het principe van zo'n apparaat? De kop, die een opdracht van de processor heeft ontvangen, schrijft gegevens naar een cel of leest een constante. In het eenvoudigste geval is het een rekenkundig getal. Bovendien kunnen constanten gegevensstructuren, tekenreeksen, enz. Zijn. Een variabele is een geheugencel waarin informatie wordt opgeslagen. Tijdens het uitvoeren van het algoritme kunnen in zo'n cel diverse gegevens worden vastgelegd. Personal computers en andere elektronica zijn op dit principe gebouwd. Het algoritme voor het uitvoeren van een taak is een reeks opdrachten voor het lezen van of schrijven van informatie in deze geheugencellen.

arrays

Arrays zijn een andere variatiegeïndexeerde variabelen. In feite is het een verzameling cellen die zijn verenigd door een gemeenschappelijke benaming. Arrays maken onderscheid tussen 2D, 3D, enz. De eenvoudigste hiervan is een reeks opeenvolgende cellen. Zo'n array heeft zijn eigen naam. Elk element heeft zijn eigen nummerindex. Een constante die naar een cel wordt geschreven, wordt een array-element genoemd.

Tweedimensionaal type door de opstelling van elementenlijkt op een matrix. De cellen in zo'n array worden gekenmerkt door twee indices (dit lijkt op een schaakbord met celnummers). Op hetzelfde principe worden driedimensionale en meer structuren gerealiseerd.

programma stroomschema

Lineaire algoritmen

Dit type stroomdiagramreeksalgoritmen (voorbeelden worden gegeven in dit artikel) worden gekenmerkt door uitvoering van begin tot eind van boven naar beneden. In dit geval voert de automaat de daarvoor voorgeschreven bewerkingen stap voor stap uit. Elke actie wordt verwerkt door de processor. Naast berekeningen geeft hij, indien nodig, de lees- / schrijfkop opdracht waar en wat geschreven moet worden en van waar te lezen. Het eindresultaat wordt in geheugencellen geschreven, die elk hun eigen index hebben en hun eigen constante opslaan.

Forking-algoritmen

In de praktijk is het lineaire type uiterst zeldzaam. Het is vaak nodig om een ​​reeks te organiseren die, afhankelijk van de gegeven omstandigheden, langs de ene of de andere tak stroomt. Het blokschema van het algoritme van het vertakkingstype bevat het element "Oplossing", waardoor een bepaalde voorwaarde wordt gecontroleerd, en hoe meer er zijn, hoe meer vertakkingen de reeks heeft.

blokschema van het probleemalgoritme

Algoritme stroomdiagrammen: voorbeelden

Bedenk hoevertakt algoritme. Laten we een functie als voorbeeld nemen: z = y / x. Uit de voorwaarde blijkt dat deze vergelijking één beperking heeft: je kunt niet delen door nul. Het is dus noodzakelijk om deze oplossing uit te sluiten en de gebruiker te waarschuwen voor de opgetreden fout. Eerst wordt een blokschema van het algoritme opgesteld. Het zal uit zeven blokken bestaan. Het eerste grafische symbool is "Start", het tweede is "Enter", hier dient u de waarden van X en Y in te stellen. Daarna volgt het blok "Decision", daarin wordt de conditie gecontroleerd: X = 0. In dit geval controleert de automaat de cel met een constante, als de ingevoerde waarde daarmee samenvalt, gaat de beslissing van het algoritme langs de "Ja" -tak. In dit geval wordt de besturing overgedragen aan het vierde blok en geeft de machine een "fout" af, het werk eindigt in het zevende symbool "Einde". Als het testresultaat negatief is, wordt het deelproces uitgevoerd in het vijfde grafische symbool en wordt de Z-waarde bepaald. In het zesde blok wordt het resultaat op het scherm weergegeven.

Cyclische algoritmen

Vaak moet u bij het oplossen van problemen herhalenhet uitvoeren van een bewerking volgens dezelfde afhankelijkheid voor verschillende waarden van de variabelen en het uitvoeren van meerdere passages door hetzelfde gedeelte van het circuit. Dergelijke secties worden meestal cycli genoemd en het algoritme wordt cyclisch genoemd. Het gebruik van deze methode verkort de reeks zelf aanzienlijk. Cyclische algoritmen zijn meestal onderverdeeld in twee typen: met een onbekende vooraf en een bekend aantal van dergelijke passen vooraf.

Een voorbeeld van een oplossing met vertakkingsalgoritmen

Beschouw een voorbeeld dat een blokschema geeftalgoritme met een onbekend aantal passen op voorhand. Om dit te doen, moet u het probleem oplossen - geef het kleinste aantal leden van een reeks natuurlijke getallen aan, waarvan de som groter is dan het aantal K. Zo'n blokschema van het algoritme bestaat uit acht tekens. Eerst voeren we de waarde van het getal K (nr. 2) in. Vervolgens krijgt in blok 3 de variabele P de waarde "een", wat betekent dat het tellen van natuurlijke getallen daaruit begint. En de cumulatieve som C aan het begin krijgt de waarde "nul". Verder wordt de besturing overgedragen naar het vijfde blok, waar het commando wordt uitgevoerd: С = С + П. Dat wil zeggen, de waarden van de cellen C en P worden opgeteld, en het resultaat wordt overschreven in C. Nadat het eerste lid van deze reeks in blok 6 is toegevoegd, wordt de voorwaarde gecontroleerd: overschrijdt de som het gespecificeerde aantal K? Als niet aan de voorwaarde is voldaan, wordt de besturing overgebracht naar het vierde blok, waar er een wordt toegevoegd aan de variabele P en de overgang opnieuw wordt gemaakt naar blok # 5. Deze procedure gaat door totdat aan de voorwaarde is voldaan: C> K, dat wil zeggen, het geaccumuleerde bedrag overschrijdt de opgegeven waarde. Variabele P is de lusteller. Dan is er een overgang naar blok nummer 7, waar de resultaten van het werk worden afgedrukt.

algoritme wordt gegeven door het blokschema

Algoritmen met geneste lusstructuren

Vaak met een algoritmische oplossing voor de settaak, is er een behoefte om een ​​cyclus te creëren die een andere cyclus in zijn lichaam bevat. Dit wordt als de norm beschouwd. Dergelijke elementen worden geneste lusstructuren genoemd. Hun bestelling kan behoorlijk groot zijn. Het wordt bepaald door de methode waarmee de oplossing van het vereiste probleem wordt bereikt. Bij het verwerken van een eendimensionale array wordt bijvoorbeeld in de regel een blokschema van het algoritme opgebouwd zonder lussen. Desalniettemin is het in een aantal gevallen nodig om bij het oplossen van dergelijke problemen voor precies zo'n oplossing te kiezen. Opgemerkt moet worden dat alle geneste lussen, inclusief de eerste (buitenste), tellers met verschillende namen moeten bevatten. Buiten hun lus kunnen ze als reguliere variabelen worden gebruikt.

Helper-algoritmen

Dit type reeks is analoog aantaalroutines. Een hulpalgoritme heeft een naam en parameters, die formeel worden genoemd. De naam wordt gegeven om het te onderscheiden van een aantal andere, en de parameters fungeren als uitvoer en voeren wiskundige functies in. Ze zijn zo gekozen dat het volledige scala aan vereiste waarden is uitgeput. Vaak blijkt een en dezelfde formele parameter zowel input als output te zijn. In een dergelijk algoritme kan bijvoorbeeld een array aan de ingang worden geleverd voor verwerking. En in het resulterende deel kan het in een gewijzigde vorm worden gepresenteerd als een uitvoerparameter. Onder de algoritmen van het hulptype worden functies en procedures onderscheiden.

Algoritme-ontleding

Met deze term wordt de ontbinding van het algemene schema bedoeldalgoritme voor hulp (functies en procedures) en hoofd. Deze methode is heel eenvoudig wanneer het algoritme wordt gegeven door een stroomdiagram - ten eerste worden de secties die verantwoordelijk zijn voor het hoofdwerk ervan ge

leuk vond:
0
Populaire berichten
Spirituele ontwikkeling
eten
Y