Curs 7.1. algoritmizarea
DE 7. Algoritmizarea și programarea. Limbi de programare la nivel înalt
Cuvântul "algoritm" provine din "algoritmi" - forma latină de descriere a numelui marelui matematician uzbec al secolului al IX-lea. al - Khorezmi, care a formulat regulile pentru efectuarea operațiunilor aritmetice. Inițial, sub algoritm, am înțeles doar regulile pentru efectuarea a patru operații aritmetice pe numere multivate.
Conceptul de algoritm este unul din conceptele fundamentale ale informaticii.
Un algoritm este o descriere formală a modului în care problema este rezolvată, prin divizarea acesteia într-o succesiune finită de acțiuni (operații elementare). Cuvântul "formal" înseamnă că descrierea trebuie să fie absolut completă și să ia în considerare toate situațiile posibile care pot apărea în cursul deciziei. O operație elementară este o acțiune care, potrivit anumitor criterii (de exemplu, evidentă), nu are sens la detaliu.
Algoritmul din limbajul de programare selectat este înregistrat folosind comenzi de descriere a datelor, calcularea valorilor și controlul secvenței executării programului.
Algoritmul ar trebui să fie proiectat astfel încât executorul, pe baza căruia a fost creat, să poată urma instrucțiunile algoritmului fără echivoc și cu precizie și eficient obține un anumit rezultat. Acest lucru impune intrărilor algoritmului o serie de cerințe obligatorii, esența cărora rezultă din interpretarea informală de mai sus a conceptului de algoritm. Formulază aceste cerințe sub forma unei liste de proprietăți pe care trebuie să le îndeplinească algoritmii.
Discreența este proprietatea unui algoritm care caracterizează structura sa: fiecare algoritm constă în acțiuni individuale finalizate. Ei spun: "Este împărțită în pași."
Mass - aplicabilitatea algoritmului la toate problemele de tipul considerat, pentru orice date inițiale. De exemplu, algoritmul pentru rezolvarea unei ecuații patratice în domeniul numărului real trebuie să conțină toate rezultatele posibile ale soluției, adică având în vedere valorile discriminante, algoritmul găsește fie două rădăcini diferite, fie două egale, sau concluzionează că nu există rădăcini reale.
Certitudinea (determinismul, acuratețea) este o proprietate a algoritmului, indicând faptul că fiecare etapă a algoritmului trebuie să fie strict definită și să nu permită interpretări diferite; De asemenea, ordinea etapelor individuale trebuie să fie strict definită. Algoritmii nu permit situații în care, după executarea următoarei comenzi, executorul nu este clar care dintre comenzile algoritmului ar trebui să fie executate în pasul următor.
Eficacitatea este o proprietate pe care orice algoritm trebuie să o încheie într-un număr finit de pași. Concluzia că nu există nici o soluție este, de asemenea, un rezultat. Problema considerării algoritmilor infinit rămâne în afara teoriei algoritmilor.
Formalitate - această proprietate indică faptul că orice interpret, capabil să perceapă și să execute instrucțiunile algoritmului, acționează formal, adică Distracted de conținutul sarcinii și respectă strict instrucțiunile. Pentru a argumenta "ce, cum și de ce?" În cazul în care dezvoltatorul algoritmului, iar interpretul formal (fără gândire) execută alternativ comenzile propuse și obține rezultatul dorit.