Algoritme: concept, eigenschappen, structuur en typen

Inhoudsopgave:

Algoritme: concept, eigenschappen, structuur en typen
Algoritme: concept, eigenschappen, structuur en typen
Anonim

Vrijwel alles in onze wereld is onderworpen aan enkele wetten en regels. De moderne wetenschap staat niet stil, waardoor de mensheid veel formules en algoritmen kent, waardoor je vele door de natuur gecreëerde acties en structuren kunt berekenen en recreëren, en de ideeën die door de mens zijn uitgevonden tot leven brengen.

In dit artikel zullen we de basisconcepten van het algoritme analyseren.

De geschiedenis van de opkomst van algoritmen

Algoritme - een concept dat in de twaalfde eeuw verscheen. Het woord "algoritme" zelf komt van de Latijnse interpretatie van de naam van de beroemde wiskundige uit het Midden-Oosten, Muhammad al-Khwarizmi, die het boek "On Indian Counting" schreef. Dit boek beschrijft hoe je natuurlijke getallen correct schrijft met Arabische cijfers, en beschrijft het algoritme van acties met een kolom over zulke getallen.

In de 12e eeuw werd het boek "On the Indian Account" vertaald in het Latijn, en toen verscheen deze definitie.

Interactie van het algoritme met mens en machine

Creatiealgoritme vereist een creatieve benadering, dus alleen een levend wezen kan een nieuwe lijst van opeenvolgende acties maken. Maar voor het uitvoeren van bestaande instructies is het niet nodig om een fantasie te hebben, zelfs zielloze technologie kan dit aan.

Een uitstekend voorbeeld van het exact opvolgen van een gegeven instructie is een lege magnetron die blijft werken ondanks dat er geen voedsel in zit.

Een onderwerp of een object dat de essentie van het algoritme niet hoeft te begrijpen, wordt een formele uitvoerder genoemd. Een persoon kan ook formeel executeur worden, maar in het geval dat een of andere handeling niet rendabel is, kan een denkende executeur alles op zijn eigen manier doen. Daarom zijn de belangrijkste artiesten computers, magnetrons, telefoons en andere apparatuur. Het concept van een algoritme in de informatica is van het grootste belang. Elk algoritme is samengesteld met de verwachting van een specifiek onderwerp, rekening houdend met de toegestane acties. De objecten waarop de proefpersoon instructies kan toepassen, vormen de omgeving van de uitvoerder.

Vrijwel alles in onze wereld is onderworpen aan enkele wetten en regels. De moderne wetenschap staat niet stil, waardoor de mensheid veel formules en algoritmen kent, waarmee je vele acties en creaties van de natuur kunt berekenen en recreëren en de door de mens uitgevonden ideeën tot leven kunt brengen. In dit artikel zullen we de basisconcepten van het algoritme analyseren.

Wat is een algoritme?

De meeste activiteiten die we tijdens ons leven uitvoeren, vereisen de naleving van een aantal regels. Van hoeveel een persoon een correct idee heeft van \u200b\u200bitwat, hoe en in welke volgorde hij moet doen, hangt af van de kwaliteit en het resultaat van de hem opgedragen taken. Sinds de kindertijd proberen ouders in hun kind een algoritme te ontwikkelen voor de belangrijkste acties, bijvoorbeeld: wakker worden, bed opmaken, tanden wassen en poetsen, oefeningen doen, ontbijten, enz., de lijst die een persoon doet zijn hele leven in de ochtend kan ook als een soort algoritme worden beschouwd.

Een algoritme is een concept dat verwijst naar een reeks instructies die een persoon moet volgen om een bepaald probleem op te lossen.

algoritme concept
algoritme concept

Over het algemeen heeft het algoritme veel definities, verschillende wetenschappers karakteriseren het anders.

Als het algoritme dat elke dag door een persoon wordt gebruikt voor iedereen anders is en kan veranderen afhankelijk van de leeftijd en de situaties waarin de artiest zich bevindt, dan is de reeks acties die moeten worden uitgevoerd om een wiskundig probleem op te lossen of technologie gebruiken is voor iedereen hetzelfde en blijft altijd hetzelfde.

Er is een ander concept van een algoritme, de soorten algoritmen verschillen ook - bijvoorbeeld voor een persoon die een doel nastreeft, en voor technologie.

In ons tijdperk van informatietechnologie volgen mensen dagelijks een reeks instructies die door andere mensen voor hen zijn gemaakt, omdat technologie bij gebruik een nauwkeurige uitvoering van een reeks acties vereist. Daarom is de belangrijkste taak van leraren op scholen om kinderen te leren algoritmen te gebruiken, snel bestaande regels te begrijpen en te wijzigen in overeenstemming met de huidige situatie. De structuur van het algoritme is er een van:concepten, die op elke school wordt bestudeerd in de les wiskunde en informatica.

programma-algoritme
programma-algoritme

Basiseigenschappen van het algoritme

1. Discretie (opeenvolging van individuele acties) - elk algoritme moet worden weergegeven als een reeks eenvoudige acties, die elk moeten beginnen na de voltooiing van de vorige.

2. Zekerheid - elke actie van het algoritme moet zo eenvoudig en duidelijk zijn dat de uitvoerder geen vragen heeft en geen vrijheid van handelen heeft.

3. Efficiëntie - de beschrijving van het algoritme moet duidelijk en volledig zijn, zodat na het uitvoeren van alle instructies de taak zijn logische einde bereikt.

4. Massakarakter - het algoritme zou toepasbaar moeten zijn op een hele klasse van problemen, die alleen kunnen worden opgelost door de getallen in het algoritme te veranderen. Hoewel er een mening is dat het laatste punt niet van toepassing is op algoritmen, maar op alle wiskundige methoden in het algemeen.

Vaak gebruiken leraren op scholen om kinderen een beter begrip van de algoritmen te geven, het voorbeeld van koken uit een kookboek, het maken van medicijnen op recept of het maken van een zeepproductieproces op basis van een masterclass. Als we echter rekening houden met de tweede eigenschap van het algoritme, die zegt dat elk onderdeel van het algoritme zo duidelijk moet zijn dat het door absoluut elke persoon en zelfs een machine kan worden uitgevoerd, kunnen we concluderen dat elk proces dat op zijn minst een soort van van verbeelding, kan het algoritme niet worden genoemd. En koken en handwerken vereisen bepaalde vaardigheden en een goed ontwikkelde verbeeldingskracht.

Er zijn verschillende soorten algoritmen,maar er zijn drie hoofdzaken.

Cyclisch algoritme

In dit type worden sommige items meerdere keren herhaald. De lijst met acties die moeten worden herhaald om het doel te bereiken, wordt de hoofdtekst van het algoritme genoemd.

Iteratie van een lus is de uitvoering van alle items in de hoofdtekst van de lus. Delen van de lus die constant een bepaald aantal keren worden uitgevoerd, worden een lus met een vast nummer genoemd van iteraties.

Die delen van de cyclus, waarvan de frequentie afhangt van een aantal omstandigheden, worden onbepaald genoemd.

De eenvoudigste soort cyclus is vast.

Er zijn twee soorten cyclische algoritmen:

  • Loop met voorwaarde. In dit geval controleert de hoofdtekst van de lus zijn toestand voordat deze wordt uitgevoerd.
  • Een lus met een postconditie. In een lus met een postconditie wordt de conditie gecontroleerd na het einde van de lus.
soorten algoritmen
soorten algoritmen

Lineaire soorten algoritmen

Instructies van dergelijke circuits worden één keer uitgevoerd in de volgorde waarin ze worden gepresenteerd. Het proces van het opmaken van een bed of tandenpoetsen kan bijvoorbeeld worden beschouwd als een lineair algoritme. Dit type bevat ook wiskundige voorbeelden, waarbij er alleen bewerkingen voor optellen en aftrekken zijn.

algoritme structuur
algoritme structuur

Vertakkingsalgoritme

Er zijn verschillende opties in een vertakkingstype, welke wordt toegepast, hangt af van de conditie.

Voorbeeld. Vraag: "Regent het?" Antwoordmogelijkheden: "Ja" of "Nee". Als een"ja" - open de paraplu, indien "nee" - stop de paraplu in de zak.

algoritme modellen
algoritme modellen

Hulpalgoritme

Hulpalgoritme kan in andere algoritmen worden gebruikt door alleen de naam op te geven.

Termen gevonden in algoritmen

De voorwaarde staat tussen de woorden "if" en "then".

Bijvoorbeeld: als je Engels kent, druk dan op één. In deze zin is het deel van de zin "u kent Engels" de voorwaarde.

Data is informatie die een bepaalde semantische lading draagt en op zo'n manier wordt gepresenteerd dat het kan worden verzonden en gebruikt voor dit algoritme.

Algoritmisch proces - een probleem oplossen volgens een algoritme dat bepaalde gegevens gebruikt.

Structuur van het algoritme

Het algoritme kan een andere structuur hebben. Om een algoritme te beschrijven, waarvan het concept ook afhangt van de structuur, kun je een aantal verschillende manieren gebruiken, bijvoorbeeld: verbaal, grafisch, met behulp van een speciaal ontwikkelde algoritmische taal.

Welke methode zal worden gebruikt, hangt af van verschillende factoren: de complexiteit van de taak, hoe gedetailleerd het proces om het probleem op te lossen moet zijn, enz.

Grafische versie van het algoritme

Grafisch algoritme - een concept dat de ontbinding impliceert van acties die moeten worden uitgevoerd om een specifiek probleem op te lossen, volgens bepaalde geometrische vormen.

Grafische diagrammen worden niet willekeurig weergegeven. Om ze in staat te stellenom een persoon te begrijpen, worden meestal stroomdiagrammen en Nassi-Schneiderman-structogrammen gebruikt.

Blokdiagrammen worden ook getekend in overeenstemming met GOST-19701-90 en GOST-19.003-80. Grafische figuren die in het algoritme worden gebruikt, zijn onderverdeeld in:

  • Basis. De hoofdafbeeldingen worden gebruikt om de bewerkingen aan te geven die nodig zijn om gegevens te verwerken bij het oplossen van een probleem.
  • Hulpmiddel. Hulpafbeeldingen zijn nodig om individuele, niet de belangrijkste, elementen voor het oplossen van het probleem aan te geven.

In een grafisch algoritme worden de geometrische vormen die worden gebruikt om gegevens weer te geven blokken genoemd.

Alle blokken gaan in volgorde "van boven naar beneden" en "van links naar rechts" - dit is de juiste stroomrichting. Met de juiste volgorde geven de lijnen die de blokken met elkaar verbinden niet de richting aan. In andere gevallen wordt de richting van de lijnen aangegeven met pijlen.

Een correct algoritmeschema mag niet meer dan één uitgang hebben van verwerkingsblokken en minder dan twee uitgangen van blokken die verantwoordelijk zijn voor logische bewerkingen en conditiecontrole.

Hoe een algoritme correct te bouwen?

De structuur van het algoritme, zoals hierboven vermeld, moet worden gebouwd volgens GOST, anders is het niet begrijpelijk en toegankelijk voor anderen.

De algemene opnamemethode omvat de volgende items:

De naam waarmee duidelijk wordt welk probleem met dit schema kan worden opgelost.

Elk algoritme moet een duidelijk gemarkeerd begin en einde hebben.

Algoritmenalle gegevens, zowel input als output, moeten duidelijk en duidelijk worden beschreven.

berekening van algoritmen
berekening van algoritmen

Bij het compileren van een algoritme moet men de acties noteren die het mogelijk maken de acties uit te voeren die nodig zijn om het probleem op de geselecteerde gegevens op te lossen. Geschatte weergave van het algoritme:

  • Chemanaam.
  • Gegevens.
  • Start.
  • Teams.
  • Einde.

Een juiste constructie van het circuit zal de berekening van algoritmen aanzienlijk vergemakkelijken.

Geometrische vormen die verantwoordelijk zijn voor verschillende acties in het algoritme

Horizontaal ovaal - begin en einde (eindteken).

Horizontale rechthoek - berekening of andere acties (procesteken).

Horizontaal parallellogram - invoer of uitvoer (gegevensteken).

Horizontale ruit - conditiecontrole (beslissingsteken).

Langwerpige, horizontale zeshoek - wijziging (teken van voorbereiding).

Algoritmemodellen worden hieronder getoond.

Formule-verbale versie van de constructie van het algoritme.

Formule-verbale algoritmen zijn geschreven in een willekeurige vorm, in de professionele taal van het gebied waartoe de taak behoort. Beschrijving van acties op deze manier wordt uitgevoerd met behulp van woorden en formules.

concept van algoritmetypen van algoritmen
concept van algoritmetypen van algoritmen

Het concept van een algoritme in de informatica

Op computergebied is alles gebaseerd op algoritmen. Zonder duidelijke instructies in de vorm van een speciale code, werkt geen enkele techniek ofprogramma. Bij lessen informatica proberen studenten de basisconcepten van algoritmen bij te brengen, ze te leren hoe ze deze moeten gebruiken en ze zelf te maken.

Het maken en gebruiken van algoritmen in de informatica is een creatiever proces dan bijvoorbeeld het volgen van instructies voor het oplossen van een wiskundeprobleem.

Er is ook een speciaal programma "Algoritme" dat mensen die onwetend zijn op het gebied van programmeren helpt om hun eigen programma's te maken. Zo'n hulpmiddel kan een onmisbare assistent worden voor degenen die hun eerste stappen in de informatica zetten en hun eigen games of andere programma's willen maken.

Aan de andere kant is elk programma een algoritme. Maar als het algoritme alleen de acties uitvoert die moeten worden uitgevoerd door zijn gegevens in te voegen, dan draagt het programma al de voltooide gegevens. Een ander verschil is dat het programma gepatenteerd en privébezit kan zijn, maar het algoritme niet. Een algoritme is een breder begrip dan een programma.

Conclusie

In dit artikel hebben we het concept van een algoritme en zijn typen geanalyseerd, geleerd hoe we grafische schema's correct kunnen schrijven.

Aanbevolen: