Feitlik alles in ons wêreld is onderhewig aan sekere wette en reëls. Moderne wetenskap staan nie stil nie, waardeur die mensdom baie formules en algoritmes ken, waarna jy baie aksies en strukture wat deur die natuur geskep is, kan bereken en herskep, en die idees wat deur die mens uitgedink is, tot lewe kan bring.
In hierdie artikel sal ons die basiese konsepte van die algoritme ontleed.
Die geskiedenis van die ontstaan van algoritmes
Algorithm - 'n konsep wat in die XII eeu verskyn het. Die woord "algoritme" self kom van die Latynse interpretasie van die naam van die beroemde Midde-Oosterse wiskundige Muhammad al-Khwarizmi, wat die boek "On Indian Counting" geskryf het. Hierdie boek beskryf hoe om natuurlike getalle korrek te skryf deur Arabiese syfers te gebruik, en beskryf die algoritme van aksies met 'n kolom oor sulke getalle.
In die 12de eeu is die boek "On the Indian Account" in Latyn vertaal, en toe verskyn hierdie definisie.
Interaksie van die algoritme met mens en masjien
Skeppingalgoritme vereis 'n kreatiewe benadering, so slegs 'n lewende wese kan 'n nuwe lys van opeenvolgende aksies skep. Maar vir die uitvoering van bestaande instruksies is dit nie nodig om 'n fantasie te hê nie, selfs siellose tegnologie kan dit hanteer.
'n Uitstekende voorbeeld om 'n gegewe instruksie presies te volg, is 'n leë mikrogolfoond wat aanhou werk ten spyte van die afwesigheid van kos daarin.
'n Onderwerp of 'n voorwerp wat nie die essensie van die algoritme hoef te verstaan nie, word 'n formele eksekuteur genoem. 'n Persoon kan ook 'n formele eksekuteur word, maar in die geval dat die een of ander aksie nie winsgewend is nie, kan 'n denkende eksekuteur alles op sy eie manier doen. Daarom is die hoofpresteerders rekenaars, mikrogolfoonde, telefone en ander toerusting. Die konsep van 'n algoritme in rekenaarwetenskap is van die uiterste belang. Elke algoritme word saamgestel met die verwagting van 'n spesifieke onderwerp, met inagneming van die toelaatbare aksies. Daardie voorwerpe waarop die subjek instruksies kan toepas, vorm die omgewing van die eksekuteur.
Feitlik alles in ons wêreld is onderhewig aan sekere wette en reëls. Moderne wetenskap staan nie stil nie, waardeur die mensdom baie formules en algoritmes ken, waarna jy baie aksies en skeppings van die natuur kan bereken en herskep en die idees wat deur die mens uitgevind is, tot lewe kan bring. In hierdie artikel sal ons die basiese konsepte van die algoritme ontleed.
Wat is 'n algoritme?
Die meeste van die aktiwiteite wat ons gedurende ons lewens uitvoer, vereis die nakoming van 'n aantal reëls. Van hoeveel 'n persoon 'n korrekte idee het van 'n bietjiewat, hoe en in watter volgorde hy moet doen, hang af van die kwaliteit en resultaat van die take wat aan hom opgedra is. Ouers het van kleins af probeer om in hul kind 'n algoritme vir die hoofaksies te ontwikkel, byvoorbeeld: wakker word, bed opmaak, was en tande borsel, oefeninge doen, ontbyt eet, ens., die lys wat 'n persoon doen sy hele lewe in die oggend kan ook as 'n soort algoritme beskou word.
'n Algoritme is 'n konsep wat verwys na 'n stel instruksies wat 'n persoon moet volg om 'n sekere probleem op te los.
In die algemeen het die algoritme baie definisies, verskeie wetenskaplikes karakteriseer dit verskillend.
As die algoritme wat elke dag deur 'n persoon gebruik word vir almal anders is, en kan verander na gelang van die ouderdom en situasies waarin die kunstenaar homself bevind, dan is die stel aksies wat uitgevoer moet word om 'n wiskundige probleem op te los of om tegnologie te gebruik is dieselfde vir almal en bly altyd dieselfde.
Daar is 'n ander konsep van 'n algoritme, die tipes algoritmes verskil ook - byvoorbeeld vir 'n persoon wat 'n doel nastreef, en vir tegnologie.
In ons tyd van inligtingstegnologie volg mense daagliks 'n stel instruksies wat deur ander mense voor hulle geskep is, want tegnologie vereis presiese uitvoering van 'n reeks aksies wanneer dit gebruik word. Daarom is die hooftaak van onderwysers in skole om kinders te leer hoe om algoritmes te gebruik, bestaande reëls vinnig te begryp en te verander in ooreenstemming met die huidige situasie. Die struktuur van die algoritme is een daarvankonsepte, wat in die les van wiskunde en rekenaarwetenskap in elke skool bestudeer word.
Basiese eienskappe van die algoritme
1. Diskreetheid (volgorde van individuele aksies) - enige algoritme moet voorgestel word as 'n reeks eenvoudige aksies, wat elkeen moet begin na die voltooiing van die vorige een.
2. Sekerheid - elke aksie van die algoritme moet so eenvoudig en duidelik wees dat die kunstenaar geen vrae het nie en nie vryheid van aksie het nie.
3. Doeltreffendheid - die beskrywing van die algoritme moet duidelik en volledig wees, sodat die taak na die uitvoering van alle instruksies sy logiese einde bereik.
4. Massakarakter - die algoritme moet van toepassing wees op 'n hele klas probleme, wat slegs opgelos kan word deur die getalle in die algoritme te verander. Alhoewel daar 'n mening is dat die laaste punt nie van toepassing is op algoritmes nie, maar vir alle wiskundige metodes in die algemeen.
Dikwels in skole, om kinders 'n beter begrip van die algoritmes te gee, gebruik onderwysers die voorbeeld van kook uit 'n kookboek, maak medisyne van 'n voorskrif, of maak 'n seepmaakproses gebaseer op 'n meesterklas. Met inagneming van die tweede eienskap van die algoritme, wat sê dat elke item van die algoritme so duidelik moet wees dat dit deur absoluut enige persoon en selfs 'n masjien uitgevoer kan word, kan ons aflei dat enige proses wat ten minste een of ander soort vereis van verbeelding kan die algoritme nie genoem word nie. En kook en naaldwerk verg sekere vaardighede en 'n goed ontwikkelde verbeelding.
Daar is verskillende tipes algoritmes,maar daar is drie hoofs.
Sikliese algoritme
In hierdie tipe word sommige items verskeie kere herhaal. Die lys van aksies wat herhaal moet word om die doel te bereik, word die liggaam van die algoritme genoem.
Iterasie van 'n lus is die uitvoering van al die items wat in die liggaam van die lus ingesluit is. Dele van die lus wat konstant 'n sekere aantal kere uitgevoer word, word 'n lus met 'n vaste nommer genoem van herhalings.
Daardie dele van die siklus, waarvan die frekwensie van 'n aantal toestande afhang, word onbepaald genoem.
Die eenvoudigste soort siklus is vas.
Daar is twee soorte sikliese algoritmes:
- Lus met voorvereiste. In hierdie geval gaan die liggaam van die lus sy toestand na voordat dit uitgevoer word.
- 'n Lus met 'n postoestand. In 'n lus met 'n postkondisie word die toestand na die einde van die lus nagegaan.
Lineêre tipes algoritmes
Instruksies van sulke stroombane word een keer uitgevoer in die volgorde waarin dit aangebied word. Byvoorbeeld, die proses om 'n bed te maak of tande te borsel, kan as 'n lineêre algoritme beskou word. Hierdie tipe sluit ook wiskundige voorbeelde in, waar daar net optel- en aftrekbewerkings is.
Vertakkingsalgoritme
Daar is verskeie opsies in 'n vertakkingstipe, watter een toegepas sal word, hang af van die toestand.
Voorbeeld. Vraag: "Reën dit?" Antwoordopsies: "Ja" of "Nee". As 'n"ja" - maak die sambreel oop, indien "nee" - sit die sambreel in die sak.
Hulpalgoritme
Hulpalgoritme kan in ander algoritmes gebruik word deur slegs die naam daarvan te spesifiseer.
Terme gevind in algoritmes
Die toestand is tussen die woorde "as" en "dan".
Byvoorbeeld: as jy Engels ken, druk dan een. In hierdie sin sal die deel van die frase "jy ken Engels" die voorwaarde wees.
Data is inligting wat 'n sekere semantiese las dra en op so 'n manier aangebied word dat dit oorgedra en vir hierdie algoritme gebruik kan word.
Algorithmiese proses - los 'n probleem op volgens 'n algoritme deur sekere data te gebruik.
Struktuur van die algoritme
Die algoritme kan 'n ander struktuur hê. Om 'n algoritme te beskryf, waarvan die konsep ook afhang van die struktuur daarvan, kan jy 'n aantal verskillende maniere gebruik, byvoorbeeld: verbaal, grafies, deur 'n spesiaal ontwikkelde algoritmiese taal te gebruik.
Watter metode sal gebruik word, hang af van verskeie faktore: die kompleksiteit van die taak, hoe gedetailleerd die proses om die probleem op te los moet wees, ens.
Grafiese weergawe van die algoritme
Grafiese algoritme - 'n konsep wat die ontbinding impliseer van aksies wat uitgevoer moet word om 'n spesifieke probleem op te los, volgens sekere geometriese vorms.
Grafiese diagramme word nie lukraak getoon nie. Sodat hulle kanom enige persoon te verstaan, word vloeidiagramme en Nassi-Schneiderman-struktogramme meestal gebruik.
Blokdiagramme word ook geteken in ooreenstemming met GOST-19701-90 en GOST-19.003-80. Grafiese figure wat in die algoritme gebruik word, word verdeel in:
- Basies. Die hoofprente word gebruik om die bewerkings aan te dui wat nodig is om data te verwerk wanneer 'n probleem opgelos word.
- Hulp. Hulpprente is nodig om individuele, nie die belangrikste, elemente van die probleem op te los nie.
In 'n grafiese algoritme word die geometriese vorms wat gebruik word om data voor te stel blokke genoem.
Alle blokke gaan in volgorde "van bo na onder" en "links na regs" - dit is die korrekte vloeirigting. Met die korrekte volgorde wys die lyne wat die blokke met mekaar verbind nie die rigting nie. In ander gevalle word die rigting van die lyne deur pyle aangedui.
'n Korrekte algoritmeskema behoort nie meer as een uitgang van verwerkingsblokke en minder as twee uitgange uit blokke te hê wat verantwoordelik is vir logiese bewerkings en toestandkontrolering nie.
Hoe om 'n algoritme korrek te bou?
Die struktuur van die algoritme, soos hierbo genoem, moet volgens GOST gebou word, anders sal dit nie verstaanbaar en toeganklik vir ander wees nie.
Die algemene opnamemetodologie sluit die volgende items in:
Die naam waarmee dit duidelik sal wees watter probleem met hierdie skema opgelos kan word.
Elke algoritme moet 'n duidelik gemerkte begin en einde hê.
Algorithmesalle data, beide invoer en uitvoer, moet duidelik en duidelik beskryf word.
Wanneer 'n algoritme saamgestel word, moet 'n mens let op die aksies wat dit moontlik maak om die aksies uit te voer wat nodig is om die probleem op die geselekteerde data op te los. Geskatte aansig van die algoritme:
- Chema-naam.
- Data.
- Begin.
- Teams.
- Einde.
Behoorlike konstruksie van die stroombaan sal die berekening van algoritmes aansienlik vergemaklik.
Meetkundige vorms verantwoordelik vir verskillende aksies in die algoritme
Horizontale ovaal - begin en einde (eindteken).
Horizontale reghoek - berekening of ander handelinge (prosesteken).
Horizontale parallelogram - invoer of afvoer (datateken).
Horizontale ruit - toestandkontrole (besluitteken).
Verlengde, horisontale seshoek - modifikasie (teken van voorbereiding).
Algorithm-modelle word hieronder getoon.
Formule-verbale weergawe van die algoritme-konstruksie.
Formule-verbale algoritmes word in 'n arbitrêre vorm geskryf, in die professionele taal van die area waartoe die taak behoort. Beskrywing van handelinge op hierdie manier word uitgevoer met behulp van woorde en formules.
Die konsep van 'n algoritme in rekenaarwetenskap
In die rekenaarveld is alles op algoritmes gebaseer. Sonder duidelike instruksies ingevoer in die vorm van 'n spesiale kode, sal geen tegniek werk ofprogram. By rekenaarwetenskaplesse probeer studente om die basiese konsepte van algoritmes te gee, hulle te leer hoe om dit te gebruik en dit op hul eie te skep.
Die skep en gebruik van algoritmes in rekenaarwetenskap is 'n meer kreatiewe proses as om byvoorbeeld instruksies te volg om 'n probleem in wiskunde op te los.
Daar is ook 'n spesiale program "Algorithm" wat mense wat onkundig is op die gebied van programmering help om hul eie programme te skep. So 'n hulpbron kan 'n onontbeerlike assistent word vir diegene wat hul eerste treë in rekenaarwetenskap gee en hul eie speletjies of enige ander programme wil skep.
Aan die ander kant is enige program 'n algoritme. Maar as die algoritme slegs die aksies dra wat uitgevoer moet word deur sy data in te voeg, dan dra die program reeds die voltooide data. Nog 'n verskil is dat die program gepatenteer en privaat eiendom kan wees, maar die algoritme is nie. 'n Algoritme is 'n breër konsep as 'n program.
Gevolgtrekking
In hierdie artikel het ons die konsep van 'n algoritme en sy tipes ontleed, geleer hoe om grafiese skemas korrek te skryf.