Algoritmul. în numele uchonogoal Khorezmi (pers خوارزمی [Al-Khwārazmī].) - naborinstruktsy detaliate. care descrie procedurile de artist pentru a realiza problema rezultataresheniya într-un timp finit. În interpretarea veche, cuvântul „ordine“ de a folosi cuvântul „secvență“, dar cu dezvoltarea calculatoarelor paralele în cuvântul „secvență“ au fost înlocuite cu termenul mai general „ordine“. Acest lucru se datorează faptului că activitatea unor instrucțiuni algoritm poate fi dependent de alte instrucțiuni sau rezultatele muncii lor. Astfel, unele dintre instrucțiuni trebuie să fie efectuate strict, după finalizarea instrucțiunilor de care depind. Instrucțiuni independente sau instrucțiuni care au devenit independente din cauza instrucțiunii de închidere, care depind, pot fi efectuate în orice ordine, sau în paralel, în același timp, dacă aveți sistemul de operare și procesor dreapta.
Anterior, de multe ori a scris „algorif m“ este acum o astfel de scriere este rar folosit, dar, cu toate acestea, are un loc (de exemplu, Normal algorifmMarkova).
Frecvent, artistul realizează un mecanism (strung de calculator, mașina de cusut), dar conceptul de algoritm se aplică în mod necesar programelor de calculator. astfel încât, de exemplu, descrise în mod clar și feluri de mâncare reteta este un algoritm, în acest caz, interpretul este un om.
Algoritmul de determinare Diverse conțin implicit sau explicit următorul set de cerințe comune:
Discret - algoritmul ar trebui să reprezinte procesul de soluționare a problemei ca punerea în aplicare consecventă a unor pași simpli. Astfel, pentru fiecare pas al algoritmului necesită o perioadă finită de timp, adică transformarea datelor brute în rezultatul efectuat în timp discret.
Determinancy (certitudine). La fiecare moment următorul pas al sistemului este determinat în mod unic de către stat. Astfel, algoritmul produce același rezultat (răspuns) la aceleași date sursă. În interpretarea modernă în diferite implementări ale aceluiași algoritm ar trebui să fie izomorfnyygraf. Pe de altă parte, există algoritmi probabilist, în care etapa următoare de funcționare depinde de starea actuală a sistemului și numărul aleatoriu generat. Cu toate acestea, în cazul în care metoda de generare de numere aleatoare în lista de „date brute“, un algoritm probabilistic devine subspecie uzuale.
Clear - algoritmul de interpret ar trebui să includă doar acele comenzi pe care el (interpret) sunt disponibile, care sunt incluse în setul său de instrucțiuni.
De terminare (membrelor) - când este setat corect algoritmul de date inițiale ar trebui să închidă și să ofere rezultatul unui număr finit de pași. [Sursa nu sunt specificate 43 de zile] Pe de altă parte, algoritmul probabilistă nu poate da rezultatul, dar probabilitatea este egal cu 0.
Masă (universalitate). Algoritmul ar trebui să fie aplicabil diferitelor seturi de date de intrare.
Eficacitate - finalizarea unor rezultate algoritm.
Algoritmul conține o eroare în cazul în care conduce la rezultate incorecte, sau nici un rezultat, la toate.
Algoritmul nu conține erori, în cazul în care dă rezultate corecte pentru orice date inițiale admisibile.
Istoria termenului
Definiția actuală formală a algoritmului a fost dat în anii 30-50th ai secolului XX în rabotahTyuringa, Post, (teza lui Church - Turing) Bisericii, H. Wiener A. Markov.
Cuvântul „algoritm“ este derivat din numele cercetătorului Abu Abdullah Al-Khwarizmi (Algoritm - Al-Khwarizmi). Okolo825, a scris un eseu în care, pentru prima dată, a dat o descriere inventat în India sistem număr zecimal pozitional. Din păcate, araba originală a cărții nu a fost păstrat. Al-Khwarizmi a formulat reguli pentru calcularea noului sistem și, probabil, pentru prima dată ispolzovaltsifru 0 pentru a indica elemente omise în număr record (numele ei indian arabi au tradus-Kakas sIFR sau prostosifr. De aici cuvinte ca „figura“ și „cifru“). Cam în același timp a început să folosească cifrele indiene, și alți savanți arabi. In prima carte din secolul al polovineXII-Khwarizmi în traducerea latină a pătruns în Europa. Traducător, al cărui nume nu a fost păstrat, a dat-o nazvanieAlgoritmi de Numero Indorum ( «algoritmi de cont indian"). În arabă, cartea imenovalasKitab Al-Jabr wal Mugabala ( „Cartea adunare și scădere“). Din titlul original al cărții vine slovoAlgebra (algebră - Al-Jabr).
Astfel, vedem că numele latinizat de oameni de știință din Asia Centrală a fost făcută în titlul cărții, și astăzi nimeni nu are nici o îndoială că cuvântul „algoritm“, a intrat în limbi europene, datorită acestei compoziții. Cu toate acestea, problema sensului ei pentru o lungă perioadă de timp a provocat o dezbatere aprinsă. Timp de multe secole, originea cuvântului s-au dat o varietate de explicații.
Unii au fost luate algorism de grecheskihalgiros (pacient) iarithmos (număr). Din această explicație nu este foarte clar de ce este numărul de „bolnav“. Sau lingviști păreau oameni bolnavi care au ghinionul de a se angaja în calcule? Explicația sa oferit ientsiklopedichesky Brockhaus și Efron. In nomalgorifm (de altfel, napisaniealgoriѳm înainte de revoluție a fost folosită. Cherezfitu) se face „din cuvântul arab al-Goretm, este rădăcina.“ Desigur, această explicație poate fi cu greu considerate concludente.
traducerea lucrărilor menționate mai sus al-Khwarizmi a fost primul semn, iar în următoarele câteva secole, o serie de alte lucrări, toate dedicate aceluiași subiect - învățare arta de numărare cu numere. Și ei sunt toți în titlu a avut cuvântul ilialgorismi algoritmi.
„Algorizm a fost inventat în Grecia. Se chastarifmetiki. Inventat el a fost un maestru pe nume Algorizm, care ia dat numele lui. Și cum a fost numit Algorizm El a numit cartea sa“ Algorizm“.
„Master Algus“ (sau Argus), în literatura medievală era personificarea artei numărabil. Și în deja menționat "Romance of Rose" și celebrul poem italian "The Flower", scris Durante. Există fragmente, în care se afirmă că, chiar și «Argus mestre» nu va putea conta de câte ori lupta și de a face iubitori de pace. poezie engleză poetDzhefri Chaucer „Cartea Ducesei“ (1369) scrie că, chiar și „frumos contra Argus» (nobil Argu contur) nu pot găsi monștrii care au apărut în viziunile de coșmar ale eroului.
Cu toate acestea, versiunea greacă nu a fost singurul. Algor mitic (Algor) a fost numit korolomKastilii (Rex quodam Castelliae), regele toindiyskim. salvie toarabskim (philosophus Algus nomini Arabicus).
De-a lungul timpului, cu toate acestea, o astfel de explicație mai puțin și mai puțin implicate în matematică, iar algorism cuvântul (ilialgorismus), mereu prezent în numele operelor matematice, metoda valorii dobândite pentru efectuarea operațiunilor aritmetice cu cifre arabe, adică, pe hârtie, fără ispolzovaniyaabaka. Este în acest sens a intrat în limbi mnogieevropeyskie. De exemplu, marcate „depășite.“ Este prezentă în dicționar reprezentantului engleză yazykaWebster World New dicționar. publicată, v1957
Algoritmul - este arta de numărare cu numere, dar la început cuvântul „cifra“ se referă numai la zero. Celebre franceză truverGote de Kuansi (Gautier de Coincy, 1177-1236), într-unul dintre poemele utilizate slovaalgorismus-cifru (ceea ce a însemnat numărul 0) ca o metaforă pentru a descrie persoana absolut lipsit de valoare. Evident, acest mod de înțelegere necesită o pregătire corespunzătoare a studenților, ceea ce înseamnă că noul sistem de numerotare a fost deja destul de bine cunoscut pentru ei.
Timp de multe secole, abac a fost, de fapt, singurul mijloc de calcule practice, a fost folosit, iar comercianții și schimbătorii de bani și oameni de știință. calcul demnitatea de pe placa de numărare a explicat în scrierile sale un astfel de gânditor remarcabil, Herbert Avrilaksky (938-1003), care, în 999 Roman g.papoy sub numele de Silvestru al II-lea. Noi cu mare dificultate, pentru a lupta drumul lor, și în istoria matematicii a devenit tabere de opoziție încăpățânate algorismikov iabatsistov (uneori numit gerbekistami), care a promovat utilizarea abac de calcul în loc de cifre arabe. Interesant, celebrul francez matematikNikolya Shyuke (Nicolas Chuquet, 1445-1488) în Registrul contribuabililor gorodaLiona a fost înscris ca algorismik (algoriste). Dar a durat mai mult de un secol înainte de noua metodă de numărare a fost în cele din urmă a confirmat, astfel încât a fost nevoie de timp pentru a dezvolta o denumiri, în general, recunoscute, îmbunătățite și adaptate la înregistrarea pe metodele de calcul ale hârtiei. În Europa de Vest, profesorul aritmetică până secol doXVII încă numit „Maeștrii abacul,“ ca, de exemplu, matematikaNikkolo Tartaglia (1500-1557).
Astfel, lucrările de artă a contului se numește un algoritm. Din mai multe sute de astfel pot fi izolate și neobișnuite așa cum este scris în versetul traktatCarmen de Algorismo (înseamnă latinskoecarmen versete) Aleksandra De Villa Dei (Alexander de Villa Dei, d. 1240) sau manual în astronomie la Viena și Purbach matematikaGeorga (Georg Peurbach, 1423-1461 ) opus algorismi jocundissimi ( «eseu vesel pe algoritmul").
Treptat, cuvântul se extinde. Oamenii de știință au început să-l aplice nu numai pur computationala, ci și la alte proceduri matematice. De exemplu, în jurul valorii de 1360 filozoful francez Nicholas Orem (Nicolaus Oresme, 1323 / 25-1382) a scris proportionum traktatAlgorismus matematic ( «Calculul proporției"), care a fost folosit pentru prima dată de gradul cu exponenții fracționată și de fapt, a fost aproape de ideea de logaritmi. Când a venit să înlocuiască așa-numitele linii de scor abac pe numeroase ghid pe acestea din oțel Linealis nazyvatAlgorithmus. adică, regulile contului de pe liniile.
Puteți să acorde o atenție la faptul că forma originală algorismi după un anumit timp și-a pierdut ultima literă, iar cuvântul a devenit mai convenabil pentru pronunția european vidalgorism. Mai târziu, și ea, la rândul său, supus distorsiunea, cel mai probabil asociat cu slovomarithmetic.
În 1684 goduGotfrid Leibniz sochineniiNova Methodvs pro maximis et minimis, itemque tangentibus ... pentru prima dată a folosit cuvântul „algoritm» (Algorithmo) într-un sens mai larg: ca un mod sistematic de a rezolva problemele de calcul.
În secolul al XVIII-lea într-una din dicționare matematice germane, Vollstandiges mathematisches Lexicon (publicat vLeyptsige v1747 oraș) terminalgorithmus încă explicat modul în care conceptul de patru operații aritmetice. Dar acest sens nu a fost singurul, pentru că terminologia matematică la acel moment încă format numai. În special, infinitesimalis vyrazheniealgorithmus aplicate metode pentru efectuarea de acțiuni cu cantități infinitezimale. Am folosit cuvântul iLeonard Euler algoritm. una dintre lucrările care se numește - „Folosind un nou algoritm pentru a rezolva Pell» (De USU novi algorithmi în problemate Pelliano solvendo). Vedem că o înțelegere a Euler algoritm ca sinonim pentru modalități de rezolvare a problemei este deja foarte aproape de moderne.
Cu toate acestea, a fost nevoie de încă două secole tot sensul vechi al cuvântului a căzut în desuetudine. Acest proces poate fi văzut în penetrarea cuvântului „algoritm“, în limba română.
Istoricii anul 1691 una dintre listele drevnerumynskogo manual aritmetică, cunoscut sub numele de „înțelepciune de audit.“ Acest lucru este cunoscut în multe cazuri (dintre care mai devreme de aproape o sută de ani mai în vârstă) și datează chiar rukopisyamXVI mai vechi în. Pe ei puteți vedea modul în care cunoștințele de cifre arabe și regulile de acțiune cu ei răspândit treptat în Rusia. Numele complet al acestui manual - „Această carte glagolemaya pe aritmetica Elenă și greacă, și în algorizma germană, iar pe tsifirnaya Rusă înțelepciune numărabil.“
Astfel, cuvântul „algoritm“, a fost înțeleasă ca primii matematicieni români, cât și în Europa de Vest. Cu toate acestea, nu a fost în celebrul dicționar V. I. Dalya. sau o sută de ani mai târziu, în „Dicționarul explicativ al limbii române“, editat de D. N. Ushakova (1935). Dar cuvântul „algoritm“ poate fi găsit în dicționar populare Granat frații dorevolyutsionnomEntsiklopedicheskom. și în primul izdaniiBolshoy Enciclopedia sovietică (BVB), publicat în 1926. Și acolo, și acolo este tratată în același mod: ca regulă, prin care una sau alta dintre cele patru operații aritmetice în sistemul zecimal. Cu toate acestea, de la începutul secolului XX. pentru matematicieni cuvântul „algoritm“ a însemnat orice aritmetică sau proces algebrică efectuate de reguli strict definite, iar această explicație este dată și în următoarele publicații ale TSB.