Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola...

58
Prof. Di Capua Giuseppe

Transcript of Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola...

Page 1: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Prof. Di Capua Giuseppe

Page 2: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ProblemiProblemi

La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno al campo scientifico,

In realtà…

La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno al campo scientifico,

In realtà…

Ud 1: Dal problema all’algoritmo

…Ogni giorno, diverse volte al giorno, siamo chiamati a risolvere dei problemi. Per esempio:1. decidere se riconciliarci con un amico con cui abbiamo litigato;2. calcolare l'area di un rettangolo, note la base e l'altezza;3. scegliere tra diverse proposte quella economicamente più vantaggiosa per una gita scolastica;4. stabilire quale squadra vincerà quest'anno il campionato nazionale di calcio...

…Ogni giorno, diverse volte al giorno, siamo chiamati a risolvere dei problemi. Per esempio:1. decidere se riconciliarci con un amico con cui abbiamo litigato;2. calcolare l'area di un rettangolo, note la base e l'altezza;3. scegliere tra diverse proposte quella economicamente più vantaggiosa per una gita scolastica;4. stabilire quale squadra vincerà quest'anno il campionato nazionale di calcio...

1/8

Il maestro disse: «Non voglio avere nulla a che vedere con chi non si chiede:come fare, come fare?» da Confucio, "I colloqui", XV, 15

Il maestro disse: «Non voglio avere nulla a che vedere con chi non si chiede:come fare, come fare?» da Confucio, "I colloqui", XV, 15

Page 3: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ProblemiProblemi

2/8

Ci troviamo di fronte a una situazione problematica tutte le volte che per una questione non abbiamo una soluzione automatica e, per procedere oltre, abbiamo bisogno di raggiungere nuove informazioni, magari derivandole da quelle già disponibili per mezzo di opportune operazioni.

In altre parole, un problema nasce tutte le volte che una persona decide di raggiungere un obiettivo, ma non ha ancora identificato un mezzo per raggiungere questo traguardo.

Ci troviamo di fronte a una situazione problematica tutte le volte che per una questione non abbiamo una soluzione automatica e, per procedere oltre, abbiamo bisogno di raggiungere nuove informazioni, magari derivandole da quelle già disponibili per mezzo di opportune operazioni.

In altre parole, un problema nasce tutte le volte che una persona decide di raggiungere un obiettivo, ma non ha ancora identificato un mezzo per raggiungere questo traguardo.

Ud 1: Dal problema all’algoritmo

Page 4: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ProblemiProblemi Fin dai primi anni di scuola abbiamo appreso la nozione di problema sotto forma di quesito a cui si deve dare una risposta, detta

soluzione del problema.

Naturalmente quando il quesito ci viene posto da parte di qualcuno, questi suppone che non conosciamo la soluzione. Infatti perché il problema sia tale è necessario fare uno sforzo mentale nella ricerca della soluzione del problema.

Fin dai primi anni di scuola abbiamo appreso la nozione di problema sotto forma di quesito a cui si deve dare una risposta, detta

soluzione del problema.

Naturalmente quando il quesito ci viene posto da parte di qualcuno, questi suppone che non conosciamo la soluzione. Infatti perché il problema sia tale è necessario fare uno sforzo mentale nella ricerca della soluzione del problema.

3/8

Ud 1: Dal problema all’algoritmo

Page 5: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ProblemiProblemi

4/8

A questo punto scatta un processo di ricerca per risolvere il quesito posto, cioè il problema.Possiamo quindi affermare che i problemi hanno origine dalla realtà che, letta nella sua complessità, presenta molto spesso in chi la osserva situazioni che possiamo definire problematiche che creano curiosità e perché.

A questo punto scatta un processo di ricerca per risolvere il quesito posto, cioè il problema.Possiamo quindi affermare che i problemi hanno origine dalla realtà che, letta nella sua complessità, presenta molto spesso in chi la osserva situazioni che possiamo definire problematiche che creano curiosità e perché.

Uscire da una situazione problematica vuol dire compiere delle azioni che permettono di dare risposte alle domandeposte, vuoi dire «risolvere un problema».

Uscire da una situazione problematica vuol dire compiere delle azioni che permettono di dare risposte alle domandeposte, vuoi dire «risolvere un problema».

Ud 1: Dal problema all’algoritmo

Page 6: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

chi si propone di risolvere un problema chi si propone di risolvere un problema

Risolutore Risolutore

1/7

Ud 1: Dal problema all’algoritmo

Avvalendosi di un patrimonio di conoscenze precedentemente acquisite, deve seguire un cammino che si compone di più passi e che viene detto analisi del problema.

Avvalendosi di un patrimonio di conoscenze precedentemente acquisite, deve seguire un cammino che si compone di più passi e che viene detto analisi del problema.

Page 7: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

chi si propone di eseguire la soluzione del problema chi si propone di eseguire la soluzione del problema

EsecutoreEsecutore

1/7

Ud 1: Dal problema all’algoritmo

Page 8: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Il Risolutore si occupa di:Il Risolutore si occupa di:

2/7

a) interpretare l'enunciato del problema e definire gli obiettivi che devono essere realizzati;b) individuare le informazioni necessarie per risolvere il problema (dati iniziali) costruendo, se possibile, un opportuno modello della situazione problematica;c) descrivere il procedimento risolutivo individuando le operazioni da compiere sui dati e col legar logicamente per ottenere i risultati o dati finali;d) verificare se i risultati ottenuti rispondono alle finalità del problema reale e, quindi, se i sono o non sono attendibili

a) interpretare l'enunciato del problema e definire gli obiettivi che devono essere realizzati;b) individuare le informazioni necessarie per risolvere il problema (dati iniziali) costruendo, se possibile, un opportuno modello della situazione problematica;c) descrivere il procedimento risolutivo individuando le operazioni da compiere sui dati e col legar logicamente per ottenere i risultati o dati finali;d) verificare se i risultati ottenuti rispondono alle finalità del problema reale e, quindi, se i sono o non sono attendibili

Ud 1: Dal problema all’algoritmo

Page 9: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

L’Esecutore si occupa di:L’Esecutore si occupa di:

2/7

a) eseguire nell'ordine le operazioni descritte nel processo risolutivo evidenziando i risultati o finali; a) eseguire nell'ordine le operazioni descritte nel processo risolutivo evidenziando i risultati o finali;

Ud 1: Dal problema all’algoritmo

Page 10: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

3/7

Ud 1: Dal problema all’algoritmo

PROBLEMAVERIFICA

DEI RISULTATI

INTERPRETAZIONE MODELLOPROCEDIMENTO

RISOLUTIVO

ESECUZIONE

Page 11: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

4/7

IL risolutore e l'esecutore della risoluzione di un problema sono la stessa persona, ma a volte no.

Può presentarsi il caso che il risolutore affidi l'esecuzione del processo risolutivo ad un'altra persona ad un esecutore automatico come, per esempio, ad un elaboratore elettronico. In questo caso, il risolutore descrive il procedimento risolutivo di un problema deve riferirsi all'esecutore.

La descrizione del procedimento risolutivo è condizionata dalle caratteristiche dell'esecutore.

IL risolutore e l'esecutore della risoluzione di un problema sono la stessa persona, ma a volte no.

Può presentarsi il caso che il risolutore affidi l'esecuzione del processo risolutivo ad un'altra persona ad un esecutore automatico come, per esempio, ad un elaboratore elettronico. In questo caso, il risolutore descrive il procedimento risolutivo di un problema deve riferirsi all'esecutore.

La descrizione del procedimento risolutivo è condizionata dalle caratteristiche dell'esecutore.

Ud 1: Dal problema all’algoritmo

Page 12: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

5/7

•sapere quale linguaggio comprende l'esecutore;•sapere quali sono le azioni operative e logiche che l'esecutore sa eseguire;•sapere in modo ordinato, conciso e univoco le azioni che •l'esecutore deve eseguire.

•sapere quale linguaggio comprende l'esecutore;•sapere quali sono le azioni operative e logiche che l'esecutore sa eseguire;•sapere in modo ordinato, conciso e univoco le azioni che •l'esecutore deve eseguire.

Ud 1: Dal problema all’algoritmo

Il risolutore deve:Il risolutore deve:Il risolutore deve:Il risolutore deve:

Il ruolo dell'esecutore invece si estrinseca nei seguenti passi:•ricevere i dati iniziali;•interpretare ed eseguire le azioni descritte nel processo risolutivo del problema; •fornire i risultati.

Il ruolo dell'esecutore invece si estrinseca nei seguenti passi:•ricevere i dati iniziali;•interpretare ed eseguire le azioni descritte nel processo risolutivo del problema; •fornire i risultati.

Il ruolo dell'esecutoreIl ruolo dell'esecutoreIl ruolo dell'esecutoreIl ruolo dell'esecutore

Page 13: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

6/7

Ud 1: Dal problema all’algoritmo

Procedimento risolutivo

del problema

Esecutore Dati finalio risultati

Dati iniziali

Verifica dei risultati

Risolutore

Page 14: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Risolutore ed EsecutoreRisolutore ed Esecutore

7/7

Ud 1: Dal problema all’algoritmo

Nella soluzione dei problemi è facilmente riconoscibile la necessità di esaminare tre aspetti fondamentali:

1)L'insieme dei dati di cui si dispone e l'insieme dei

risultati che si vogliono ottenere.

2)L'insieme delle istruzioni che consentono di

ottenere la soluzione del problema.

3)Le capacità dell'esecutore a cui le istruzioni sono

dirette.

Nella soluzione dei problemi è facilmente riconoscibile la necessità di esaminare tre aspetti fondamentali:

1)L'insieme dei dati di cui si dispone e l'insieme dei

risultati che si vogliono ottenere.

2)L'insieme delle istruzioni che consentono di

ottenere la soluzione del problema.

3)Le capacità dell'esecutore a cui le istruzioni sono

dirette.

Page 15: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmoAlgoritmo

1/6

Ud 1: Dal problema all’algoritmo

Possiamo concludere che risolvere un problema significa ricercare ed esprimere una successione finita di istruzioni interpretabili ed eseguibili da un esecutore, che conducano da determinate informazioni iniziali ad altre informazioni finali.

Possiamo concludere che risolvere un problema significa ricercare ed esprimere una successione finita di istruzioni interpretabili ed eseguibili da un esecutore, che conducano da determinate informazioni iniziali ad altre informazioni finali.

Se tale successione di istruzioni rispetta determinate caratteristiche viene detta Algoritmo

Se tale successione di istruzioni rispetta determinate caratteristiche viene detta Algoritmo

Page 16: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmoAlgoritmo

1/6

Ud 1: Dal problema all’algoritmo

Nasce dal nome di un matematico arabo del IX secolo : Abu Ja’far Mohammed ibn Musa al -Kowarizm

Nasce dal nome di un matematico arabo del IX secolo : Abu Ja’far Mohammed ibn Musa al -Kowarizm

Page 17: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmiAlgoritmi

2/6

Una Definizione Una Definizione

è una descrizione di un insieme finito di passi, che devono essere eseguite per portare a termine un dato compito e per raggiungere un risultato definito.

è una descrizione di un insieme finito di passi, che devono essere eseguite per portare a termine un dato compito e per raggiungere un risultato definito.

Ud 1: Dal problema all’algoritmo

Esempi di algoritmo possono essere:Le istruzioni per l’utilizzo di un elettrodomesticoLe regole per eseguire la divisione tra due numeri

Esempi di algoritmo possono essere:Le istruzioni per l’utilizzo di un elettrodomesticoLe regole per eseguire la divisione tra due numeri

Page 18: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmiAlgoritmi

3/6

Ud 1: Dal problema all’algoritmo

ProprietàProprietà

Non Ambiguo:Le istruzioni devono essere precise e non ambigue

Non Ambiguo:Le istruzioni devono essere precise e non ambigue

Deterministico:Appliccato n volte sugli stessi dati produce gli stessi risultati

Deterministico:Appliccato n volte sugli stessi dati produce gli stessi risultati

Generale:Risolve tutti i problemi di una stessa classe

Generale:Risolve tutti i problemi di una stessa classe

Finito:Le istruzioni devono essere un numero finito ed eseguite in un tempo finito

Finito:Le istruzioni devono essere un numero finito ed eseguite in un tempo finito

Page 19: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmiAlgoritmi

4/6

Ud 1: Dal problema all’algoritmo

Un algoritmo è

una descrizione completa, univoca e

esaustiva

di un insieme finito di operazioni

elementari,

interpretabili e riproducibili

dall’esecutore,

che permette di raggiungere lo scopo

del processo in un tempo ragionevole.

Un algoritmo è

una descrizione completa, univoca e

esaustiva

di un insieme finito di operazioni

elementari,

interpretabili e riproducibili

dall’esecutore,

che permette di raggiungere lo scopo

del processo in un tempo ragionevole.

DefinizioneDefinizione

Page 20: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmiAlgoritmi

Dati che servono

Risultati

Ud 1: Dal problema all’algoritmo

Contattare telefonicamente una serie di persone a cui deve lasciare un messaggio

Contattare telefonicamente una serie di persone a cui deve lasciare un messaggio

Il messaggio da comunicare Il messaggio da comunicare

L’elenco delle persone con l’indicazione per ciascuna dell’esito della telefonata

L’elenco delle persone con l’indicazione per ciascuna dell’esito della telefonata

L’elenco delle persone con il nome e il numero di telefono L’elenco delle persone con il nome e il numero di telefono

5/6

Deve

Page 21: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

AlgoritmiAlgoritmi

6/6

Contattare telefonicamente una serie di persone a cui deve lasciare un messaggio

Contattare telefonicamente una serie di persone a cui deve lasciare un messaggio

Algoritmo

o leggi il numero telefonicoo componi il numeroo a seconda della situazione che si presenta scrivi sull’elenco: ‘occupato’, ‘ numero errato’ o ‘OK’o ripeti le operazioni precedenti finché le persone sono finite.

Algoritmo

o leggi il numero telefonicoo componi il numeroo a seconda della situazione che si presenta scrivi sull’elenco: ‘occupato’, ‘ numero errato’ o ‘OK’o ripeti le operazioni precedenti finché le persone sono finite.

Ud 1: Dal problema all’algoritmo

Deve

Page 22: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

VARIABILI E COSTANTI VARIABILI E COSTANTI Per rappresentare un algoritmo occorre innanzitutto individuare le entità che lo caratterizzano.

Per rappresentare un algoritmo occorre innanzitutto individuare le entità che lo caratterizzano.Es. 1: ATTIVITA’ FATTURAZIONE

Entità

Il cliente cui è rivolta la fatturazione

Il prodotto che viene venduto

La fattura

Ogni entità può essere presente con diversi esemplari, contraddistinti dai diversi valori assunti dagli ATTRIBUTI DELL’ENTITA’, gli elementi che rappresentano e specificano l’entità.

Ogni entità può essere presente con diversi esemplari, contraddistinti dai diversi valori assunti dagli ATTRIBUTI DELL’ENTITA’, gli elementi che rappresentano e specificano l’entità.

Entità cliente Attributi: Il nome, l’indirizzo, la città dove risiede, il numero di partita IVA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Se gli attributi possono assumere valori diversi per diversi esemplari dell’entità, essi sono detti VARIABILI.

Se gli attributi possono assumere valori diversi per diversi esemplari dell’entità, essi sono detti VARIABILI.

Page 23: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

VARIABILI E COSTANTIVARIABILI E COSTANTI

h

bA= b h

Gli attributi che assumono sempre lo stesso valore vengono definiti COSTANTI

Gli attributi che assumono sempre lo stesso valore vengono definiti COSTANTI

I nomi che diamo alle variabili o alle costanti, vengono detti IDENTIFICATORI

I nomi che diamo alle variabili o alle costanti, vengono detti IDENTIFICATORI

A = r² r

Entità prodotto(automobile)

Attributi: La marca, il modello, il colore, il numero di ruote (in un automobile è sempre 4!)

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Page 24: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

DATIDATII dati sono i valori assunti da variabili e costanti. I dati

possono essere di diverso tipo:I dati sono i valori assunti da variabili e costanti. I dati

possono essere di diverso tipo:

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Page 25: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Le istruzioni sono le azioni che costituiscono l’algoritmo.

Al fine di raggiungere il risultato voluto, le istruzioni di un algoritmo devono essere eseguite secondo un ordine ben preciso, che di norma è quello sequenzialesequenziale, ma che può talvolta variare in funzione dei dati e a seconda del particolare algoritmo.

A tal fine, nella rappresentazione di un algoritmo, le istruzioni vengono raggruppate all’interno di costrutti detti Strutture di Controllo.

Le istruzioni sono le azioni che costituiscono l’algoritmo.

Al fine di raggiungere il risultato voluto, le istruzioni di un algoritmo devono essere eseguite secondo un ordine ben preciso, che di norma è quello sequenzialesequenziale, ma che può talvolta variare in funzione dei dati e a seconda del particolare algoritmo.

A tal fine, nella rappresentazione di un algoritmo, le istruzioni vengono raggruppate all’interno di costrutti detti Strutture di Controllo.

Page 26: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Istruzioni di assegnazioneConsente di assegnare un valore o una espressione ad una variabile. L’assegnazione è distruttiva ovvero si perde il valore contenuto in precedenza nella variabile.La indicheremo con

Nome variabile = Espressione

Istruzioni di assegnazioneConsente di assegnare un valore o una espressione ad una variabile. L’assegnazione è distruttiva ovvero si perde il valore contenuto in precedenza nella variabile.La indicheremo con

Nome variabile = Espressione

Esempio:A =10 Variabile A assegno il numero 10 A = B Variabile A assegno il contenuto della

Variabile BA = B + D Variabile A assegno una espressione

Esempio:A =10 Variabile A assegno il numero 10 A = B Variabile A assegno il contenuto della

Variabile BA = B + D Variabile A assegno una espressione

Page 27: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Esempio:A = 10 Variabile assegno un dato Costante

Esempio:A = 10 Variabile assegno un dato Costante

A 10

Page 28: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Esempio:A = B Variabile A assegno Variabile B

Esempio:A = B Variabile A assegno Variabile B

B 7 A B

7

Page 29: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Esempio:A = B + D Variabile A assegno Espressione

Esempio:A = B + D Variabile A assegno Espressione

B 7 D 4

A B + D

11

Page 30: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

INPUT: Assegna un valore letto dall’esterno ad una variabile

INPUT: Assegna un valore letto dall’esterno ad una variabile

lato 8

Esempio: Algoritmo dell’area di un quadrato

leggi(lato)

Se l’input è il numero 8 allora nella variabile lato ci sarà il numero 8

Esempio: Algoritmo dell’area di un quadrato

leggi(lato)

Se l’input è il numero 8 allora nella variabile lato ci sarà il numero 8

Page 31: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONIISTRUZIONI

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

OUTPUT: Visualizzano il valore di una variabile OUTPUT: Visualizzano il valore di una variabile

Area

64

Esempio: Algoritmo dell’area di un quadrato

scrivi(Area)

Se l’input è il numero 8 (lato) allora nella variabile Area ci sarà il numero 64

Esempio: Algoritmo dell’area di un quadrato

scrivi(Area)

Se l’input è il numero 8 (lato) allora nella variabile Area ci sarà il numero 64

Page 32: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

LA RAPPRESENTAZIONE DEGLI LA RAPPRESENTAZIONE DEGLI ALGORITMI ALGORITMI

Rappresentare un algoritmo significa esprimerlo in maniera precisa e non ambigua.A tal fine sono state sviluppate diverse tecniche di rappresentazione, che possiamo essenzialmente suddividere tra

GraficheTestuali

Rappresentare un algoritmo significa esprimerlo in maniera precisa e non ambigua.A tal fine sono state sviluppate diverse tecniche di rappresentazione, che possiamo essenzialmente suddividere tra

GraficheTestuali

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Diagrammi a BlocchiDiagrammi a BlocchiGraficheGrafiche

TestualiTestuali PseudocodificaPseudocodifica

Page 33: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

I DIAGRAMMI A BLOCCHII DIAGRAMMI A BLOCCHI

Sono particolari diagrammi in cui si indicano, per mezzo di blocchi di forma diversa, le varie operazioni previste dall’algoritmo e, per mezzo di frecce, l’ordine secondo il quale tali operazioni vanno eseguite

Sono particolari diagrammi in cui si indicano, per mezzo di blocchi di forma diversa, le varie operazioni previste dall’algoritmo e, per mezzo di frecce, l’ordine secondo il quale tali operazioni vanno eseguite

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

EsempioEsempio

Page 34: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

LA PSEUDOCODIFICA LA PSEUDOCODIFICA

E’ un linguaggio più rigoroso del linguaggio naturale, che usa espressioni verbali opportunamente strutturate per schematizzare le azioni descritte dall’algoritmo.

La pseudocodifica è una convenzione tra risolutore ed esecutore. Noi useremo un sottoinsieme della lingua inglese:

E’ un linguaggio più rigoroso del linguaggio naturale, che usa espressioni verbali opportunamente strutturate per schematizzare le azioni descritte dall’algoritmo.

La pseudocodifica è una convenzione tra risolutore ed esecutore. Noi useremo un sottoinsieme della lingua inglese:

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

inizioleggi(b,h)area = b*hscrivi(area)

fine

inizioleggi(b,h)area = b*hscrivi(area)

fine

EsempioEsempio

Page 35: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ISTRUZIONI DI CONTROLLOISTRUZIONI DI CONTROLLO

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Le strutture di controllo che possono essere presenti in un algoritmo sono:

1) Sequenza2) Assegnazione3) Selezione4) Iterazione

Le strutture di controllo che possono essere presenti in un algoritmo sono:

1) Sequenza2) Assegnazione3) Selezione4) Iterazione

Page 36: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SEQUENZASEQUENZA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Si parla di Struttura di Sequenza quando le operazioni descritte dall'algoritmo vanno eseguite una dopo l'altra, secondo l'ordine con cui sono elencate.

Un semplice esempio di sequenza è fornito dall’algoritmo per usare il videoregistratore quando si vuole vedere un film:

1) Accendere il televisore2) Accendere il videoregistratore3) Inserire la videocassetta4) Sintonizzare il televisore sul canale del videoregistratore5) Premere il pulsante play del videoregistratore

Si parla di Struttura di Sequenza quando le operazioni descritte dall'algoritmo vanno eseguite una dopo l'altra, secondo l'ordine con cui sono elencate.

Un semplice esempio di sequenza è fornito dall’algoritmo per usare il videoregistratore quando si vuole vedere un film:

1) Accendere il televisore2) Accendere il videoregistratore3) Inserire la videocassetta4) Sintonizzare il televisore sul canale del videoregistratore5) Premere il pulsante play del videoregistratore

Page 37: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SEQUENZASEQUENZA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Pseudocodifica

inizioIstruzione 1Istruzione 2Istruzione 3…Istruzione n

…fine

Pseudocodifica

inizioIstruzione 1Istruzione 2Istruzione 3…Istruzione n

…fine

DiagrammablocchiDiagrammablocchi

inizio

fine

Page 38: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

Istruzioni SempliciIstruzioni Semplici

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Nella rappresentazione di un algoritmo ci possono essere istruzioni semplici o altre strutture di controllo (selezione/Iterazione).

Le istruzioni semplici possono essere di:1) Input2) Output3) Assegnazione

Nella rappresentazione di un algoritmo ci possono essere istruzioni semplici o altre strutture di controllo (selezione/Iterazione).

Le istruzioni semplici possono essere di:1) Input2) Output3) Assegnazione

Page 39: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

INPUTINPUT

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

L'istruzione di input (o di lettura) permette di assegnare a una variabile un valore fornito dall'esterno, per esempio tramite la sua digitazione sulla tastiera del computer.

In questa istruzione deve essere sempre specificato il nome della variabile interessata.

Il suo effetto è quello di convertire prima la sequenza di caratteri digitati sulla tastiera in un valore di tipo uguale a quello della variabile e poi di memorizzare tale valore nella locazione di memoria individuata dall'identificatore per tale variabile.

L'istruzione di input (o di lettura) permette di assegnare a una variabile un valore fornito dall'esterno, per esempio tramite la sua digitazione sulla tastiera del computer.

In questa istruzione deve essere sempre specificato il nome della variabile interessata.

Il suo effetto è quello di convertire prima la sequenza di caratteri digitati sulla tastiera in un valore di tipo uguale a quello della variabile e poi di memorizzare tale valore nella locazione di memoria individuata dall'identificatore per tale variabile.

Page 40: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

INPUTINPUT

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

In pseudocodifica l'istruzione di input da tastiera ha la seguente forma

leggi (variabile)

In pseudocodifica l'istruzione di input da tastiera ha la seguente forma

leggi (variabile)

I diagrammi a blocchi esprimono l’input da tastiera con un parallelogramma:I diagrammi a blocchi esprimono l’input da tastiera con un parallelogramma:

variabileI

Page 41: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

OUTPUTOUTPUT

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

L'istruzione di output (o di scrittura) permette di inviare a una periferica di uscita (per es.: video, stampante) un messaggio o il valore di una variabile.

L’effetto dell'istruzione di output consiste nel calcolare il valore della espressione che nell'istruzione rappresenta ciò che si vuole scrivere, nel visualizzare sulla periferica di output il valore così calcolato.

L'istruzione di output (o di scrittura) permette di inviare a una periferica di uscita (per es.: video, stampante) un messaggio o il valore di una variabile.

L’effetto dell'istruzione di output consiste nel calcolare il valore della espressione che nell'istruzione rappresenta ciò che si vuole scrivere, nel visualizzare sulla periferica di output il valore così calcolato.

Page 42: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

OUTPUTOUTPUT

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

In pseudocodifica l'istruzione di output ha la seguente forma

scrivi (variabile)

In pseudocodifica l'istruzione di output ha la seguente forma

scrivi (variabile) I diagrammi di flusso esprimono l’output con un parallelogramma:I diagrammi di flusso esprimono l’output con un parallelogramma:

variabileO

Page 43: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ASSEGNAZIONEASSEGNAZIONE

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

L'istruzione di assegnazione permette di attribuire un valore a una variabile. Ciò può avvenire attraverso

1. il valore immediato che si vuole assegnare2. un'altra variabile3. un'espressione

Le espressioni sono istruzioni composte di costanti, variabili e operatori, e rappresentano i valori aritmetici o booleani risultanti dal loro calcolo.

L’effetto dell'istruzione di assegnazione consiste nel calcolare il valore della costante, della variabile o dell'espressione che devono essere assegnati, associare all'identificatore della variabile tale valore.

Il valore che la variabile aveva prima dell'esecuzione dell'istruzione di assegnazione viene perso (DISTRUTTIVA).

L'istruzione di assegnazione permette di attribuire un valore a una variabile. Ciò può avvenire attraverso

1. il valore immediato che si vuole assegnare2. un'altra variabile3. un'espressione

Le espressioni sono istruzioni composte di costanti, variabili e operatori, e rappresentano i valori aritmetici o booleani risultanti dal loro calcolo.

L’effetto dell'istruzione di assegnazione consiste nel calcolare il valore della costante, della variabile o dell'espressione che devono essere assegnati, associare all'identificatore della variabile tale valore.

Il valore che la variabile aveva prima dell'esecuzione dell'istruzione di assegnazione viene perso (DISTRUTTIVA).

Page 44: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ASSEGNAZIONEASSEGNAZIONE

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

In pseudocodifica l'istruzione di assegnazione del valore di una espressione a una variabile ha la seguente forma

Variabile = espressione

Es.: y = 3* x + 11

In pseudocodifica l'istruzione di assegnazione del valore di una espressione a una variabile ha la seguente forma

Variabile = espressione

Es.: y = 3* x + 11

I diagrammi di flusso esprimono l'istruzione di assegnazione con un rettangolo:I diagrammi di flusso esprimono l'istruzione di assegnazione con un rettangolo:

y = 3* x + 11

Page 45: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SELEZIONESELEZIONE

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Spesso, nella soluzione di un problema ci si trova di fronte alla necessità di prevedere più modi di proseguire, in base al verificarsi o meno di certe condizioni.In questi casi si utilizza la Struttura di Selezione.

Spesso, nella soluzione di un problema ci si trova di fronte alla necessità di prevedere più modi di proseguire, in base al verificarsi o meno di certe condizioni.In questi casi si utilizza la Struttura di Selezione.

Esempio: Accendere il televisore Accendere il videoregistratore Se non è inserita alcuna videocassetta Allora

Inserire la videocassetta Sintonizzare il televisore sul canale del videoregistratore Premere il pulsante play del videoregistratore

Esempio: Accendere il televisore Accendere il videoregistratore Se non è inserita alcuna videocassetta Allora

Inserire la videocassetta Sintonizzare il televisore sul canale del videoregistratore Premere il pulsante play del videoregistratore

La struttura di selezione può essere classificata a seconda del numero di alternative che produce (semplice, binaria o multipla) e in base al modo in cui viene composta con altre strutture di selezione (nidificata o in cascata).

La struttura di selezione può essere classificata a seconda del numero di alternative che produce (semplice, binaria o multipla) e in base al modo in cui viene composta con altre strutture di selezione (nidificata o in cascata).

Page 46: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SELEZIONE SEMPLICESELEZIONE SEMPLICE

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

La Selezione Semplice si ha quando sono presenti istruzioni per uno solo dei due possibili valori della condizione booleana.

La Selezione Semplice si ha quando sono presenti istruzioni per uno solo dei due possibili valori della condizione booleana.

Esempio: … … Se non è inserita alcuna videocassetta Allora

Inserire la videocassetta … …

Esempio: … … Se non è inserita alcuna videocassetta Allora

Inserire la videocassetta … …

Pseudocodifica

Se condizione Allora istruzione1

Finese

Pseudocodifica

Se condizione Allora istruzione1

Finese

Diagramma a blocchiDiagramma a blocchi

condizionevero

Page 47: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SELEZIONE BINARIASELEZIONE BINARIA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

La Selezione Binaria si ha se sono presenti istruzioni corrispondenti a entrambi i possibili percorsi, e quindi istruzioni corrispondenti al valore vero e istruzioni corrispondenti al valore falso di una condizione booleana.

La Selezione Binaria si ha se sono presenti istruzioni corrispondenti a entrambi i possibili percorsi, e quindi istruzioni corrispondenti al valore vero e istruzioni corrispondenti al valore falso di una condizione booleana. Esempio:Se non è inserita alcuna videocassetta Allora

Inserire la videocassetta Altrimenti

Controllare il titolo della videocassetta

Esempio:Se non è inserita alcuna videocassetta Allora

Inserire la videocassetta Altrimenti

Controllare il titolo della videocassetta

Pseudocodifica

Se condizione Allora istruzione1

Altrimentiistruzione2

finese

Pseudocodifica

Se condizione Allora istruzione1

Altrimentiistruzione2

finese

Diagramma a blocchi flussoDiagramma a blocchi flusso

condizioneVeroFalso

Page 48: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SELEZIONE MULTIPLASELEZIONE MULTIPLA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

La Selezione Multipla permette la diramazione del flusso operativo in base ai possibili valori di una espressione non booleana. Di conseguenza, la struttura di Selezione Multipla permette la produzione di più di due alternative nella prosecuzione del flusso operativo.

La Selezione Multipla permette la diramazione del flusso operativo in base ai possibili valori di una espressione non booleana. Di conseguenza, la struttura di Selezione Multipla permette la produzione di più di due alternative nella prosecuzione del flusso operativo. Esempio: Controllare il titolo della videocassetta

Se è “Matrix”: Premere il tasto PlaySe è “Via col Vento”: Premere il tasto Eject Se è “Senza Titolo”: Premere il tasto Record

Esempio: Controllare il titolo della videocassetta

Se è “Matrix”: Premere il tasto PlaySe è “Via col Vento”: Premere il tasto Eject Se è “Senza Titolo”: Premere il tasto Record

Pseudocodifica

NEL CASO CHE espressione SIA

valore 1: sequenza 1;valore 2: sequenza 2;…valore n: sequenza n;

ALTRIMENTI sequenza;FINECASO;

Pseudocodifica

NEL CASO CHE espressione SIA

valore 1: sequenza 1;valore 2: sequenza 2;…valore n: sequenza n;

ALTRIMENTI sequenza;FINECASO;

Diagramma a blocchiDiagramma a blocchi

espressione

1 2 … n altro

Page 49: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SELEZIONE NIDIFICATASELEZIONE NIDIFICATA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Si parla di selezione nidificata quando all'interno del blocco che deve essere eseguito nel caso di condizione vera troviamo altre strutture di selezione.

Si parla di selezione nidificata quando all'interno del blocco che deve essere eseguito nel caso di condizione vera troviamo altre strutture di selezione.

Esempio: Controllare il titolo della videocassetta

Se il titolo è “Matrix” Allora Se il nastro è all’inizio Allora

Premere il tasto Play Altrimenti

Premere il tasto Rewind Altrimenti Premere il tasto Eject

Esempio: Controllare il titolo della videocassetta

Se il titolo è “Matrix” Allora Se il nastro è all’inizio Allora

Premere il tasto Play Altrimenti

Premere il tasto Rewind Altrimenti Premere il tasto Eject

Pseudocodifica

Se condizione1 Allora

Se condizione2 Allora

istruzione1Altrimenti

istruzione2finese

Altrimentiistruzione3

finese

Pseudocodifica

Se condizione1 Allora

Se condizione2 Allora

istruzione1Altrimenti

istruzione2finese

Altrimentiistruzione3

finese

Page 50: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

SELEZIONE NIDIFICATASELEZIONE NIDIFICATA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Si parla di selezione nidificata quando all'interno del blocco che deve essere eseguito nel caso di condizione vera troviamo altre strutture di selezione.

Si parla di selezione nidificata quando all'interno del blocco che deve essere eseguito nel caso di condizione vera troviamo altre strutture di selezione.

Matrix

Inizionastro

Eject

PlayRewind

vero

falso

verofalso

Esempio: Controllare il titolo della videocassetta Se il titolo è “Matrix” Allora Se il nastro è all’inizio Allora Premere il tasto Play

Altrimenti Premere il tasto Rewind Altrimenti Premere il tasto Eject

Esempio: Controllare il titolo della videocassetta Se il titolo è “Matrix” Allora Se il nastro è all’inizio Allora Premere il tasto Play

Altrimenti Premere il tasto Rewind Altrimenti Premere il tasto Eject

Page 51: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

ITERAZIONEITERAZIONE

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Quando, al fine della soluzione di un problema è necessario eseguire più volte un'istruzione o un blocco di istruzioni si utilizza la Struttura di Iterazione.Essa, detta anche Ciclo, comanda l'esecuzione ripetuta di un'istruzione o di un blocco di istruzioni in base al verificarsi di una data condizione.

Quando, al fine della soluzione di un problema è necessario eseguire più volte un'istruzione o un blocco di istruzioni si utilizza la Struttura di Iterazione.Essa, detta anche Ciclo, comanda l'esecuzione ripetuta di un'istruzione o di un blocco di istruzioni in base al verificarsi di una data condizione.

Esempio: Accendere il televisore Sintonizzare il televisore sul primo canale Fintantoché il canale sintonizzato sta trasmettendo il telegiornale, eseguire:

Sintonizzare il televisore sul canale successivo Guardare la trasmissione

Esempio: Accendere il televisore Sintonizzare il televisore sul primo canale Fintantoché il canale sintonizzato sta trasmettendo il telegiornale, eseguire:

Sintonizzare il televisore sul canale successivo Guardare la trasmissione

Esistono diversi tipi di Cicli, a seconda di quando e come viene effettuato il controllo sulla condizione:

1. ciclo a condizione iniziale2. ciclo a condizione finale3. ciclo enumerativo

Esistono diversi tipi di Cicli, a seconda di quando e come viene effettuato il controllo sulla condizione:

1. ciclo a condizione iniziale2. ciclo a condizione finale3. ciclo enumerativo

Page 52: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO CON CONTROLLO IN CODACICLO CON CONTROLLO IN CODA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Nel Ciclo con Controllo in Coda, prima vengono eseguite le istruzioni corrispondenti al corpo dell'iterazione, poi viene eseguito il controllo per stabilire se ripetere ulteriormente tali istruzioni.In questo caso, la condizione si dice di uscita, in quanto, se essa non è verificata, allora il ciclo viene ripetuto, altrimenti l'esecuzione prosegue con la prima istruzione successiva alla struttura di iterazione.In un ciclo con Controllo in coda il corpo dell'iterazione viene eseguito almeno una volta, indipendentemente dal verificarsi o meno della condizione di iterazione.

Nel Ciclo con Controllo in Coda, prima vengono eseguite le istruzioni corrispondenti al corpo dell'iterazione, poi viene eseguito il controllo per stabilire se ripetere ulteriormente tali istruzioni.In questo caso, la condizione si dice di uscita, in quanto, se essa non è verificata, allora il ciclo viene ripetuto, altrimenti l'esecuzione prosegue con la prima istruzione successiva alla struttura di iterazione.In un ciclo con Controllo in coda il corpo dell'iterazione viene eseguito almeno una volta, indipendentemente dal verificarsi o meno della condizione di iterazione.Esempio:

Eseguire le seguenti istruzioni:Prendere una videocassetta dallo scaffaleLeggere il titolo della videocassetta

fino a trovare che il titolo è “Matrix”Inserire la videocassetta nel videoregistratorePremere il tasto Play

Esempio:

Eseguire le seguenti istruzioni:Prendere una videocassetta dallo scaffaleLeggere il titolo della videocassetta

fino a trovare che il titolo è “Matrix”Inserire la videocassetta nel videoregistratorePremere il tasto Play

Page 53: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO CROLLO IN CODACICLO CROLLO IN CODA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Pseudocodifica

Eseguiistruzione 1;istruzione 2;…istruzione n;

Ripeti finchè cond

Pseudocodifica

Eseguiistruzione 1;istruzione 2;…istruzione n;

Ripeti finchè cond

Diagramma di flussoDiagramma di flusso

condizione falso

vero

Page 54: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO CON CONTROLLO IN CICLO CON CONTROLLO IN TESTATESTA

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Nel Ciclo con Controllo in Testa, per prima cosa si esegui in controllo della condizione. Se la condizione è Vera si eseguono le istruzioni del ciclo e poi si ripete il controllo. Quando la condizione è FALSA l’esecuzione prosegue con la prima istruzione successiva alla struttura di iterazione.In un ciclo con Controllo in testa il corpo dell'iterazione potrebbe anche non essere mai eseguito se la condizione è sempre FALSA.

Nel Ciclo con Controllo in Testa, per prima cosa si esegui in controllo della condizione. Se la condizione è Vera si eseguono le istruzioni del ciclo e poi si ripete il controllo. Quando la condizione è FALSA l’esecuzione prosegue con la prima istruzione successiva alla struttura di iterazione.In un ciclo con Controllo in testa il corpo dell'iterazione potrebbe anche non essere mai eseguito se la condizione è sempre FALSA.

Page 55: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO A CONDIZIONE INIZIALECICLO A CONDIZIONE INIZIALE

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Nelle istruzioni del Ciclo ci deve essere almeno una istruzione che cambia la condizione (da Vera a Falsa) altrimenti diventa un Ciclo INFINITO

Nelle istruzioni del Ciclo ci deve essere almeno una istruzione che cambia la condizione (da Vera a Falsa) altrimenti diventa un Ciclo INFINITO

Pseudocodifica

mentre condizione esegui

istruzione 1;istruzione 2;…istruzione n;

finementre

Pseudocodifica

mentre condizione esegui

istruzione 1;istruzione 2;…istruzione n;

finementre

Diagramma di flussoDiagramma di flusso

condizione

vero

Istruz1

falso

Istruz2

Page 56: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO ENUMERATIVOCICLO ENUMERATIVO

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Il Ciclo Enumerativo impone la ripetizione delle istruzioni un numero predefinito di volte.

Il Ciclo Enumerativo impone la ripetizione delle istruzioni un numero predefinito di volte.

Esempio:Quattro amici sono venuti a farci visita e vogliamo offrire loro da bere dell’aranciata.

L’algoritmo è il seguente:

Prendere un vassoioEseguire 4 volte le seguienti istruzioni: Prendere un bicchiere Posare il bicchiere sul vassoioPrendere la bottiglia di aranciataVersare l’aranciata nei bicchieri

Esempio:Quattro amici sono venuti a farci visita e vogliamo offrire loro da bere dell’aranciata.

L’algoritmo è il seguente:

Prendere un vassoioEseguire 4 volte le seguienti istruzioni: Prendere un bicchiere Posare il bicchiere sul vassoioPrendere la bottiglia di aranciataVersare l’aranciata nei bicchieri

Page 57: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO ENUMERATIVOCICLO ENUMERATIVO

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Il Ciclo Enumerativo prevede l'utilizzo di una variabile di controllo che permette di contare il numero di iterazioni eseguite.

Il Ciclo Enumerativo prevede l'utilizzo di una variabile di controllo che permette di contare il numero di iterazioni eseguite.

Pseudocodifica

FOR variabile := valore1 TO valore2 STEP valore3 DOSequenza di istruzioni

Pseudocodifica

FOR variabile := valore1 TO valore2 STEP valore3 DOSequenza di istruzioni

La variabile di controllo viene inizializzata a un valore di partenza prima di entrare nel corpo del ciclo e, dopo ciascuna iterazione, viene incrementata di un valore detto passo dell'iterazione.Il ciclo termina quando il valore raggiunto dalla variabile di controllo supera quello indicato come valore obiettivo.

Il confronto della variabile di controllo con il valore obiettivo viene eseguito all'inizio del ciclo.

La variabile di controllo viene inizializzata a un valore di partenza prima di entrare nel corpo del ciclo e, dopo ciascuna iterazione, viene incrementata di un valore detto passo dell'iterazione.Il ciclo termina quando il valore raggiunto dalla variabile di controllo supera quello indicato come valore obiettivo.

Il confronto della variabile di controllo con il valore obiettivo viene eseguito all'inizio del ciclo.

Page 58: Prof. Di Capua Giuseppe. Problemi La parola problema ha un vasto campo di significati. Nella scuola quello più comune è legato alla matematica o almeno.

CICLO ENUMERATIVOCICLO ENUMERATIVO

UNITA’ DIDATTICA 3: LA RAPPRESENTAZIONE DEGLI ALGORITMI

Diagramma a Blocchi

Diagramma a Blocchi

Variabile <= n

vero

falso

Variabile := 1

Variabile := Variabile + 1