Page 415 - Informatica dalla A a Z
P. 415

Algoritmi e Programmazione



           Le tipologie principali di ragionamento, utilizzate nella risoluzione di problemi, sono 2: il

                                                        389
                                      388
           procedimento euristico  e gli algoritmi .
           Approfondimento: Nella risoluzione dei problemi, applicare una soluzione euristica equi-

           vale a suddividere il problema in più fasi.

           Il procedimento euristico è basato sull’intuizione e sullo stato temporaneo delle cose, con
           l’obiettivo di generare una nuova conoscenza.


           Nota: L’algoritmo rappresenta una sequenza di passi, l’euristica, può sembrare una solu-
           zione più rapida, ma non sempre porta alla soluzione ottimale.


           Lo studio degli algoritmi riveste il ruolo più importante nell’ambito della programmazione.
           La comprensione di un problema e la capacità di saper impostare una soluzione ottimale è
           una condizione fondamentale per lo sviluppatore di software.


           Nota: La corretta impostazione di un problema permetterà di usare un qualunque linguag-
           gio di programmazione, per creare il corrispondente programma.


           I computer, in fondo, sono essenzialmente esecutori di “algoritmi”.

                                                         390
           In informatica, con il termine “algoritmo “ intendiamo un metodo (o procedimento), per
                                                                                                              391
           la soluzione di un problema, adatto a essere implementato sotto forma di programma ,
           ovvero una sequenza finita di operazioni (istruzioni elementari) che possono essere ese-
           guite dal sistema di elaborazione, per risolvere un problema.

           Uno stesso problema può essere risolto in modi diversi. Esistono quindi più algoritmi che

           risolvono lo stesso problema.

                                             392
                                                                 393
                                                                               394
           L’algoritmo deve essere finito , deterministico , generale  , eseguibile, e non deve es-
                          395
           sere ambiguo .

           388  L’euristica è una regola pratica dettata dall’esperienza delle cose passate. Per risolvere un problema attraverso un algoritmo,
           infatti, si ha bisogno anche di conoscenze dovute all’esperienza, che vanno ben oltre la definizione del problema stesso.
           389  Un algoritmo è un procedimento di calcolo che si basa sull’applicazione di un numero finito di regole che determinano in
           modo meccanico tutti i singoli passi del procedimento stesso.
           390  Questo termine deriva dal nome del matematico persiano Abu Ja’far Mohammed ibn Mâsâ al-Khowârizmî (825 d.C.), famoso
           per aver introdotto nel mondo arabo i numeri indiani. La sua opera "Il calcolo degli indiani" venne successivamente tradotta in
           latino da un monaco europeo, con il titolo Liber algarismi (Il libro di al-Khwarizmi).
           391  Il programma rappresenta una traduzione dell’algoritmo, attraverso un linguaggio di programmazione, in codice eseguibile
           dal computer (linguaggio macchina).
           392  Le istruzioni sono in numero finito e vengono eseguite un numero finito di volte.
           393  Ad ogni passo deve essere definita una ed una sola operazione successiva.
           394  Deve essere indipendente dai dati in ingresso.
           395  Ogni istruzione oltre ad essere elementare, deve consentire un’interpretazione univoca.
                                                            411
   410   411   412   413   414   415   416   417   418   419   420