User Tools

Site Tools


wiki:sinteza_teorie.4.2

Proprietățile algoritmilor - Sinteza teoriei


Proprietǎțile algoritmilor sunt:

1. Generalitate: un algoritm nu va rezolva un caz particular al unei probleme, ci o întreagǎ clasǎ de probleme.

Exemple:
i. Dacǎ se dorește realizarea unui algoritm pentru determinarea sumei a douǎ valori numere naturale, atunci algoritmul nu va rezolva doar problema „5+7=”, ci va rezolva în general problema „a+b=” unde a și b pot fi înlocuite cu numere naturale oarecare.
ii. Știind cǎ la materia Educație muzicalǎ elevii clasei a V-a, au câte douǎ note, dorim sǎ realizǎm un algoritm care sǎ determine media aritmeticǎ a elevilor clasei. Nu vom face un algoritm pentru a determina media Anei care are notele 8 și 10, ci vom face un algoritm pentru media (x+y)/2, unde pentru x și y vom introduce pe rând notele elevilor clasei.

2. Claritate: toate operațiile care alcǎtuiesc un algoritm sunt clar definite (fǎrǎ ambiguitǎți) și sunt logic înlǎnțuite.
Pentru un algoritm existǎ date cunoscute, numite și „date de intrare”, pe baza cǎrora se vor obține rezultatele algoritmului numite și „date de ieșire”.
Pentru aceleași date de intrare algoritmul va obține aceleași rezultate. Algoritmii realizați pentru o problemǎ datǎ sunt corecți. Majoritatea algoritmilor folosesc relații matematice.

Exemple:
i. Nu putem scrie un algoritm pentru enunțul: „Dacǎ Maria va obține la informaticǎ nota 10 atunci fie pǎrinții îi cumpǎrǎ o bicicletǎ, fie merge în excursie cu clasa.”
ii. Pentru enunțul: „Se dǎ o valoare, numǎr natural ce reprezintǎ lungimea laturii unui pǎtrat. Sǎ se determine perimetrul pǎtratului”, se poate realiza un algoritm.

3. Finitudine: un algoritm se va termina într-un numǎr finit de pași. Indiferent cât de complicat este algoritmul acesta va obține rezultatele într-un numǎr fint de operații.
Ca viitori programatori, odatǎ cu dobândirea unor cunoștințe putem alege pentru algoritmi un numǎr mai mic de pași realizând un algoritm cǎruia îi vom spune „eficient”.

wiki/sinteza_teorie.4.2.txt · Last modified: 2017/08/15 07:54 by nita.adrian