Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è...

20
Il computer Il computer ragiona? ragiona? Problemi e algoritmi Problemi e algoritmi

Transcript of Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è...

Page 1: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Il computer ragiona?Il computer ragiona?

Problemi e algoritmiProblemi e algoritmi

Page 2: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 22

Cos’è un problema?Cos’è un problema?

ProblemaProblema è qualsiasi situazione della quale non è qualsiasi situazione della quale non conosciamo la soluzioneconosciamo la soluzione

Abbiamo un Abbiamo un problemaproblema quando ci poniamo un quando ci poniamo un obiettivoobiettivo da raggiungere e perciò dobbiamo da raggiungere e perciò dobbiamo trovare una trovare una strategiastrategia

Per risolvere il Per risolvere il problemaproblema individuiamo una individuiamo una sequenza di istruzionisequenza di istruzioni elementari che, partendo elementari che, partendo da ciò che conosciamo, arrivi a da ciò che conosciamo, arrivi a dare la soluzionedare la soluzione

Page 3: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 33

Dati iningresso

Elaborazione Dati inuscita

SCHEMA

Page 4: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Che problemi?Che problemi?

Problemi!Problemi!

Page 5: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 55

Problemi di ricerca di Problemi di ricerca di informazioniinformazioni

Trovare l’indirizzo di una personaTrovare l’indirizzo di una persona

Stabilire se un numero è il più grande/piccolo di Stabilire se un numero è il più grande/piccolo di una sequenza datauna sequenza data

Stabilire se una parola segue alfabeticamente Stabilire se una parola segue alfabeticamente un’altraun’altra

Page 6: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 66

Problemi di elaborazione dei Problemi di elaborazione dei datidati

Calcolare quanto si è speso per acquistare un Calcolare quanto si è speso per acquistare un certo numero di prodotticerto numero di prodotti

Trovare il perimetro di una figura geometricaTrovare il perimetro di una figura geometrica

Calcolare il totale di una fatturaCalcolare il totale di una fattura

………………

Page 7: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 77

Problemi di decisioneProblemi di decisione

Per andare a scuola è più comodo il Per andare a scuola è più comodo il motorino o l’autobus?motorino o l’autobus?

È più interessante l’offerta telefonica della È più interessante l’offerta telefonica della Vodafone o quella di Tim?Vodafone o quella di Tim?

Quale banca ha tassi di interesse più Quale banca ha tassi di interesse più ragionevoli?ragionevoli?

Conviene il mutuo a tasso fisso o Conviene il mutuo a tasso fisso o variabile?variabile?

Page 8: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 88

Risolvere un problemaRisolvere un problema

Capire il testoCapire il testoIndividuare e distinguere ciò che è noto da ciò Individuare e distinguere ciò che è noto da ciò

che è NON lo èche è NON lo èCostruire un modello risolutivoCostruire un modello risolutivoCostruire e spiegare il procedimento Costruire e spiegare il procedimento Eseguire le operazioni stabilite nel procedimento Eseguire le operazioni stabilite nel procedimento

nell’ordine in cui si presentanonell’ordine in cui si presentanoVerificare che i risultati ottenuti corrispondano Verificare che i risultati ottenuti corrispondano

alla soluzione cercataalla soluzione cercata

Problema

Verifica

Esecuzione

Algoritmo

Modello

Interpretazione

Page 9: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 99

AlgoritmoAlgoritmo

Un algoritmo è unaUn algoritmo è una

che porta alla soluzione di tutti i che porta alla soluzione di tutti i problemi dello stesso tipoproblemi dello stesso tipo. .

sequenza finita di operazioni sequenza finita di operazioni elementarielementari

Page 10: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1010

Linguaggio di progettoLinguaggio 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

Page 11: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1111

StrutturaStruttura

Il linguaggio di progetto Il linguaggio di progetto prevede la suddivisione prevede la suddivisione dell’algoritmo in dell’algoritmo in 33 parti: parti:

RIGA DI INTESTAZIONERIGA DI INTESTAZIONE

SEZIONE DICHIARATIVASEZIONE DICHIARATIVA

SEZIONE ESECUTIVASEZIONE ESECUTIVA

Nome dell’algoritmo

Dichiarazione delle variabili e delle costanti utilizzate

Procedimento risolutivo

Page 12: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1212

Flow chartFlow chart

È uno dei metodi più È uno dei metodi più usati per la usati per la rappresentazione rappresentazione grafica degli grafica degli algoritmialgoritmi

Si rappresenta con Si rappresenta con un insieme di un insieme di figure geometriche figure geometriche collegate da freccecollegate da frecce

F

V

Page 13: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1313

InizioInizio

La prima forma La prima forma geometrica è geometrica è un’un’ELLISSEELLISSE che serve che serve ad indicare l’INIZIOad indicare l’INIZIO del flow chart.del flow chart.

Essa ha una sola freccia Essa ha una sola freccia in uscitain uscita

Inizio

Page 14: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1414

Dati di inputDati di input

I dati di input sono i dati I dati di input sono i dati CONOSCIUTICONOSCIUTI del del problema, quelli che problema, quelli che vengono elaborati per vengono elaborati per arrivare alla soluzione.arrivare alla soluzione.

La forma geometrica La forma geometrica utilizzata è il utilizzata è il PARALLELOGRAMMAPARALLELOGRAMMA che presenta DUE che presenta DUE frecce, una in ingresso frecce, una in ingresso e l’altra in uscitae l’altra in uscita

Dati di input

Page 15: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1515

OperazioniOperazioni

La forma geometrica La forma geometrica usata per le usata per le operazioni da operazioni da svolgere sui dati è svolgere sui dati è il il RETTANGOLORETTANGOLO..

Anch’esso ha DUE Anch’esso ha DUE frecce, una in frecce, una in ingresso e l’altra in ingresso e l’altra in uscitauscita

Operazioni

Page 16: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1616

CondizioneCondizione

Quando si deve fare una Quando si deve fare una SCELTA tra due o più SCELTA tra due o più possibilità si usa il possibilità si usa il ROMBOROMBO..

Esso ha almeno TRE Esso ha almeno TRE frecce, una in ingresso frecce, una in ingresso e due in uscita;e due in uscita;

di quelle in uscita una di quelle in uscita una viene seguita se la viene seguita se la condizione posta condizione posta risulta vera, l’altra se risulta vera, l’altra se risulta falsa.risulta falsa.

Vero o falso?V F

Page 17: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1717

Dati di Dati di outputoutput

I dati di output sono I dati di output sono quelli che si vogliono quelli che si vogliono conoscere e sono conoscere e sono pertanto il risultato pertanto il risultato dell’elaborazionedell’elaborazione

La forma geometrica La forma geometrica utilizzata è il utilizzata è il PARALLELOGRAMMAPARALLELOGRAMMA che presenta DUE che presenta DUE frecce, una in ingresso frecce, una in ingresso e l’altra in uscitae l’altra in uscita

Dati di output

Page 18: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1818

FineFine

L’ultima forma è L’ultima forma è un’un’ELLISSEELLISSE che serve che serve ad indicare la FINE del ad indicare la FINE del flow chart.flow chart.

Essa ha una sola freccia Essa ha una sola freccia in ingressoin ingresso

Fine

Page 19: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 1919

Quale Quale chiave?chiave?

Come si può trovare, Come si può trovare, in un mazzo di in un mazzo di chiavi, quella che chiavi, quella che apre la porta? apre la porta?

Page 20: Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cosè un problema? Problema è qualsiasi situazione della quale non conosciamo la soluzione.

Paola PianegondaPaola Pianegonda 2020

Provate a

trovare altre

soluzioni …Provate a

trovare altre

soluzioni …Provate a

trovare altre

soluzioni …FINE

inizio

Prendi una chiave

Inserisci la chiave nella serratura

La porta si apre?

fine

Nessuna chiave apre la porta

V

V

Togli la chiave dal mazzo

F

Le chiavi sono finite?

F