Il computer ragiona? Problemi e algoritmi
Cos’è un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e perciò dobbiamo trovare una strategia Per risolvere il problema individuiamo una sequenza di istruzioni elementari che, partendo da ciò che conosciamo, arrivi a dare la soluzione Paola Pianegonda
SCHEMA Elaborazione Dati in ingresso Dati in uscita Paola Pianegonda
Problemi! Che problemi?
Problemi di ricerca di informazioni Trovare l’indirizzo di una persona Stabilire se un numero è il più grande/piccolo di una sequenza data Stabilire se una parola segue alfabeticamente un’altra Paola Pianegonda
Problemi di elaborazione dei dati Calcolare quanto si è speso per acquistare un certo numero di prodotti Trovare il perimetro di una figura geometrica Calcolare il totale di una fattura ……… Paola Pianegonda
Problemi di decisione Per andare a scuola è più comodo il motorino o l’autobus? È più interessante l’offerta telefonica della Vodafone o quella di Tim? Quale banca ha tassi di interesse più ragionevoli? Conviene il mutuo a tasso fisso o variabile? Paola Pianegonda
Risolvere un problema Capire il testo Individuare e distinguere ciò che è noto da ciò che è NON lo è Costruire un modello risolutivo Costruire e spiegare il procedimento Eseguire le operazioni stabilite nel procedimento nell’ordine in cui si presentano Verificare che i risultati ottenuti corrispondano alla soluzione cercata Problema Verifica Esecuzione Algoritmo Modello Interpretazione Paola Pianegonda
Algoritmo Un algoritmo è una sequenza finita di operazioni elementari che porta alla soluzione di tutti i problemi dello stesso tipo. Paola Pianegonda
Linguaggio di progetto È il linguaggio utilizzato per la costruzione degli algoritmi È necessario che esso sia non ambiguo e “universale” Per questo utilizza sia il linguaggio matematico che la lingua inglese Paola Pianegonda
Struttura Il linguaggio di progetto prevede la suddivisione dell’algoritmo in 3 parti: RIGA DI INTESTAZIONE SEZIONE DICHIARATIVA SEZIONE ESECUTIVA Nome dell’algoritmo Dichiarazione delle variabili e delle costanti utilizzate Procedimento risolutivo Paola Pianegonda
Flow chart È uno dei metodi più usati per la rappresentazione grafica degli algoritmi Si rappresenta con un insieme di figure geometriche collegate da frecce F V Paola Pianegonda
Inizio La prima forma geometrica è un’ELLISSE che serve ad indicare l’INIZIO del flow chart. Essa ha una sola freccia in uscita Inizio Paola Pianegonda
Dati di input Dati di input I dati di input sono i dati CONOSCIUTI del problema, quelli che vengono elaborati per arrivare alla soluzione. La forma geometrica utilizzata è il PARALLELOGRAMMA che presenta DUE frecce, una in ingresso e l’altra in uscita Dati di input Paola Pianegonda
Operazioni Operazioni La forma geometrica usata per le operazioni da svolgere sui dati è il RETTANGOLO. Anch’esso ha DUE frecce, una in ingresso e l’altra in uscita Operazioni Paola Pianegonda
Condizione Vero o falso? V F Quando si deve fare una SCELTA tra due o più possibilità si usa il ROMBO. Esso ha almeno TRE frecce, una in ingresso e due in uscita; di quelle in uscita una viene seguita se la condizione posta risulta vera, l’altra se risulta falsa. Paola Pianegonda
Dati di output Dati di output I dati di output sono quelli che si vogliono conoscere e sono pertanto il risultato dell’elaborazione La forma geometrica utilizzata è il PARALLELOGRAMMA che presenta DUE frecce, una in ingresso e l’altra in uscita Dati di output Paola Pianegonda
Fine Fine L’ultima forma è un’ELLISSE che serve ad indicare la FINE del flow chart. Essa ha una sola freccia in ingresso Paola Pianegonda
Quale chiave? Come si può trovare, in un mazzo di chiavi, quella che apre la porta? Paola Pianegonda
Inserisci la chiave nella serratura Togli la chiave dal mazzo inizio Prendi una chiave Inserisci la chiave nella serratura La porta si apre? fine Nessuna chiave apre la porta V Togli la chiave dal mazzo F Le chiavi sono finite? Provate a trovare altre soluzioni … Provate a trovare altre soluzioni … Provate a trovare altre soluzioni … FINE Paola Pianegonda