La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

IL CONCETTO DI ALGORITMO

Presentazioni simili


Presentazione sul tema: "IL CONCETTO DI ALGORITMO"— Transcript della presentazione:

1 IL CONCETTO DI ALGORITMO

2 Un algoritmo è un elenco finito di istruzioni univocamente interpretabili ,ciascuna delle quali deve essere precisamente definita e la cui esecuzione si arresta per fornire i risultati di una classe di problemi per ogni valore dei dati di ingresso.

3 Proprietà di un algoritmo
Non ambiguità: le istruzioni devono essere univocamente interpretabili dall’esecutore dell’algoritmo Eseguibilità: l’esecutore deve essere in grado di eseguire ogni istruzione in un tempo finito. Finitezza: l’esecuzione di un algoritmo deve terminare in un tempo finito per ogni insieme di valori in ingresso.

4 Oggi con il termine algoritmo si indica la sequenza finita di passi effettuabili per risolvere una classe di problemi in un tempo finito.

5 Definizione di problema
Un problema è un quesito nel cui enunciato si forniscono i dati necessari per giungere ,mediante calcoli o elaborazioni ,alla soluzione richiesta nell’enunciato stesso.

6 Che cosa significa risolvere un problema ?
Dal punto di vista informatico ,risolvere un problema significa ricercare ed esprimere un elenco di istruzioni (algoritmo) che ,interpretate da un esecutore,conducano da determinate informazioni iniziali (dati) a informazioni finali (risultati).

7 Entità coinvolte Nel processo di risoluzione di un problema, sono generalmente coinvolte le seguenti entità: Committente :colui che pone il quesito. Risolutore: colui che mette a punto l’algoritmo stabilendo quali calcoli e/o elaborazioni sono necessarie per ottenere i risultati richiesti. Esecutore: chi, uomo o macchina, esegue l’algoritmo Utente:chi fornisce i dati iniziali all’ esecutore e attende i risultati.

8 Differenza fra risultato e soluzione
Risultato :è costituito dall’insieme dei dati finali. Soluzione:è l’algoritmo che permette di ottenere i risultati. Definizione di istruzione L’istruzione è un comando elementare che dice all’esecutore qual è l’operazione da eseguire in quel momento.

9 Differenza fra classe di problemi e istanza di problema
Una classe di problemi è un problema nel cui enunciato almeno un dato è fornito in forma generica (parametro) Un’ istanza di problema è un problema nel cui enunciato tutti i dati sono forniti tramite valori specifici(costanti)

10 Per esempio l’enunciato “Calcolare l’area di un rettangolo di base B e altezza H “rappresenta una classe di problemi ,mentre “Calcolare l’area di un rettangolo di base 4 e altezza 6 “ è una delle infinite istanze della stessa classe di problemi.

11 Definizione di programma
Il programma è un algoritmo espresso con un linguaggio di programmazione (Pascal,C,C++.Java,..)

12 I dati su cui opera un algoritmo sono costanti e variabili
Un dato è costante quando il suo valore non può essere aggiornato durante l’esecuzione dell’algoritmo Una variabile è una coppia <nome , valore> :può essere immaginata come una scatola sulla quale è scritto un nome e che può contenere un valore NOME

13 Un formalismo che permette di rappresentare gli algoritmi è il diagramma di flusso
E’ composto da una serie di blocchi contenenti le istruzioni e connessi mediante frecce. Ogni blocco ha un ramo di ingresso e uno o più rami di uscita.

14 Le forme dei blocchi sono:
Rettangolo :indica una operazione(ad esempio un assegnamento) A B

15 Rombo:indica una diramazione ,cioè la verifica di una condizione
Rombo:indica una diramazione ,cioè la verifica di una condizione .Se la condizione è vera si seguirà il ramo vero(true) altrimenti si seguirà il ramo falso (false) Condizione True False

16 Parallelogramma: indica una operazione di ingresso o uscita
Leggi Num

17 Ciclo While Do Condizione Falso Vero Istruzione

18 Ellissi: indica l’inizio o la fine dell’algoritmo.

19 Esempio di algoritmo con i diagrammi di flusso:” dati in input due numeri interi stabilire il più grande tra i due “ Inizio A,B Vero Falso A>B A B Fine

20 Traduzione in Pascal dell’algoritmo precedente
Program calcola_max; Var A,B: integer; Begin Writeln (‘Inserisci il 1° numero’); Readln (A); Writeln (‘Inserisci il 2° numero’); Readln (B); IF A > B Then Writeln (A) Else Writeln (B); End.


Scaricare ppt "IL CONCETTO DI ALGORITMO"

Presentazioni simili


Annunci Google