Capitolul 7. Algoritmi. Algoritmizarea. Limbi algoritmice
Conceptul de algoritm este la fel de fundamental pentru informatică ca și conceptul de informație. De aceea este important să o înțelegem.
Numele "algoritm" a venit din forma latină a numelui celui mai mare matematician din Asia Centrală Mohammed ibn Musa al-Khorezmi (Alhorithmi), care a trăit în anii 783-850. În cartea sa "În contul indian", el a subliniat regulile de înregistrare a numerelor naturale cu ajutorul cifrelor arabe și a regulilor de acțiune asupra lor printr-o "coloană", care sunt acum familiare fiecărui elev. În secolul al XII-lea, această carte a fost tradusă în latină și a devenit răspândită în Europa.
O persoană se întâlnește în fiecare zi cu necesitatea de a respecta anumite reguli, de a executa diverse instrucțiuni și instrucțiuni. De exemplu, atunci când traversați drumul la o intersecție fără un semafor, trebuie mai întâi să priviți spre dreapta. Dacă nu există mașini, mergeți la jumătate, iar dacă există mașini, așteptați până când trec, apoi mergeți la jumătate. După aceea, priviți spre stânga și, dacă nu există mașini, traversați drumul până la capăt și, dacă există mașini, așteptați până când trec, apoi traversați drumul până la capăt.
În matematică, pentru a rezolva problemele tipice, folosim anumite reguli care descriu succesiunea acțiunilor. De exemplu, regulile pentru adăugarea numerelor fracționate, rezolvarea ecuațiilor patratice etc. De obicei, orice instrucțiuni și reguli reprezintă o secvență de acțiuni care trebuie efectuate într-o anumită ordine. Pentru a rezolva problema, trebuie să știți ce este dat, ce ar trebui să obțineți și ce acțiuni și în ce ordine ar trebui să o faceți. Precepția care definește ordinea efectuării acțiunilor asupra datelor pentru obținerea rezultatelor dorite este algoritmul.
Algoritmul - predicție clară și precisă predeterminată pentru un posibil executor pentru a efectua o anumită secvență de acțiuni pentru a obține o soluție a problemei într-un număr finit de pași.
Aceasta nu este o definiție în sensul matematic al cuvântului, ci mai degrabă o descriere a conceptului intuitiv al algoritmului, dezvăluind esența acestuia.
Conceptul de algoritm nu este doar unul dintre conceptele principale ale matematicii, ci unul dintre principalele concepte ale științei moderne. Mai mult, odată cu apariția erei informaticii, algoritmii devin unul dintre cei mai importanți factori ai civilizației.
7.2. Ce este "implementatorul algoritmului"?
Executorul algoritmului este un sistem abstract sau real (tehnic, biologic sau biotehnic) capabil să realizeze acțiunile prescrise de algoritm.
Mediu (sau situație) este "habitatul" interpretului. De exemplu, pentru un interpret, mediul este un câmp de celule infinit. Pereții și celulele închise fac, de asemenea, parte din mediul înconjurător. Iar poziția lor și poziția Pobotului în sine determină starea specifică a mediului.
Sistemul de comandă. Fiecare interpret poate executa comenzi numai dintr-o anumită listă strictă - sistemul de comenzi al interpretului. Pentru fiecare comandă, trebuie stabilite condițiile de aplicabilitate (în ce condiții poate fi executată comanda) și sunt descrise rezultatele comenzii. De exemplu, comanda Pobota "în sus" poate fi executată dacă nu există perete deasupra peretelui. Rezultatul său este deplasarea Pobotului cu o celulă în sus.
După ce comanda este chemată, interpretul efectuează acțiunea elementară corespunzătoare.
Executarea refuzelor apare dacă comanda este apelată atunci când starea mediului nu este validă pentru aceasta.
De obicei, interpretul nu știe nimic despre scopul algoritmului. El execută toate comenzile primite, fără a întreba întrebările "de ce" și "de ce".
În domeniul informaticii, executorul universal al algoritmilor este un calculator.