9. Soluzione 3 Soluzione Problema Obiettivo Metodi di risoluzione che concatenano i dati del problema tramite operazioni logiche e/o di calcolo in modo da conseguire il risultato richiesto Possono assumere valori diversi durante l’elaborazione
10. Algoritmo L’algoritmo è: UNA SEQUENZA FINITA E ORDINATA DI AZIONI ELEMENTARI (UNIVOCAMENTE INTERPRETABILI) CHE DESCRIVONO LA SOLUZIONE FINALE DI UN PROBLEMA
11. REQUISITI DELL’ALGORITMO Finito – sequenza finita risultato Eseguibile – istruzioni che possono essere eseguite Non ambiguo – interpretabile allo stesso modo Generale – valido per una “classe “ di problemi Deterministico – partendo dagli stessi dati porta sempre allo stesso risultato Completo – deve considerare tutti i casi che si possono verificare durante l’esecuzione
12. Ad esempio ? Obiettivo Problema Selezionare i panni Sequenza ordinata di istruzioni Avviare la lavatrice Metterli in lavatrice Fare il bucato Aggiungere il detersivo Dato in uscita Dato in ingresso Panni lavati Panni Sporchi
13. Problema Stampa il numero più grande tra 3 numeri Soluzione in linguaggio “umano” Inserisci i 3 numeri Confronta N1 con N2 Se N1 è maggiore di N2 confronta N1 con N3 e stampa il maggiore Se N1 è minore di N2 confronta N2 con N3 e stampa il maggiore
14. Algoritmo in linguaggio naturale INIZIO Leggi N1 N2 N3 SE N1>N2 ALLORA SE N1>N3 ALLORA STAMPA N1 ALTRIMENTI STAMPA N3 FINE SE ALTRIMENTI SE N2>N3 ALLORA STAMPA N2 ALTRIMENTI STAMPA N3 FINE SE FINE SE FINE
15. I diagrammi a blocchi Rappresenta l’inizio e la fine del processo L’algoritmo viene rappresentato con un diagramma a blocchi che descrive il procedimento in modo grafico cosi da evidenziare il flusso di operazioni da eseguire. In tale diagramma ogni figura geometrica ha un significato preciso. Nella costruzione del diagramma i simboli vengono legati fra di loro da linee di giunzione e connettori che indicano il percorso all’interno dell’algoritmo Linea di giunzione Collega il blocco al passo logico successivo Operazione di lettura/scrittura dei dati (input), e di uscita o lettura dei risultati (output) Operazione di confronto, controllo e scelta di selezione Operazione di calcolo o di assegnazione. Al suo interno viene descritta l’operazione da eseguire Connettore Individua un punto dal quale si può fare riferimento ad altre parti
16.
17. Lo schema inizia con un blocco iniziale e termina con un blocco finale
18. Ogni blocco soddisfa delle condizioni di validità inizio Leggi N1, N2, N3 N1>N2 F V N2>N3 N1>N3 F F V V Stampa N3 Stampa N2 Stampa N3 Stampa N1 Fine