Download - Correzione Flow Chart Riepilogo
![Page 1: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/1.jpg)
Correzione del flowchart: “media voti
per ogni alunno”Welcome, students!
![Page 2: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/2.jpg)
Il testo del problema Data una lista di
studenti con i loro voti, determinare e stampare per ogni studente la media dei suoi voti.
![Page 3: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/3.jpg)
La lista dei voti degli studenti
I dati sono ordinati per codice studente in maniera crescente
Pertanto i voti di ogni studente sono consecutivamente raggruppati tutti insieme
L’ultima riga ha un codice convenzionale 999999 per indicare la fine della lista
Numero matricola studente
voto
1 6
1 7
1 5
2 8
3 4
3 5
4 6
4 6
5 8
5 8
999999
![Page 4: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/4.jpg)
Metodo di lavoro Prendo una soluzione di uno studente Analizzo questa soluzione per vedere quale
è stato il ragionamento Razionalizzo il ragionamento fatto,
semplificandolo Correggo eventuali errori tecnici ed
architetturali
![Page 5: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/5.jpg)
Soluzione di uno studente
![Page 6: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/6.jpg)
Analisi del flowchart Ci sono ben 4 iterazioni ! 2 di queste iterazioni sono interne ad
un’altra iterazione ! Troppo complicato Chiediamoci se c’è bisogno di tutte
queste iterazioni.
![Page 7: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/7.jpg)
Rendiamo soft le spigolosità della nostra mente
(arrotondiamo gli spigoli) Per tenere la materia cerebrale sotto
controllo, semplifichiamo il prodotto grezzo, raffiniamolo. Che cosa possiamo raffinare in questo
caso ?
![Page 8: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/8.jpg)
Reading
Leggendo attentamente il flowchart, ci accorgiamo che ci sono in sequenza due iterazioni numerate quasi identiche
All’interno di ciascuna iterazione numerata c’è una iterazione do while
![Page 9: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/9.jpg)
La logica della soluzione dello studente Bisogna capire la logica della sua
soluzione. Le due strutture iterative, l’una
esterna per scorrere gli studenti e l’altra interna per scorrere I voti di ciascun studente (sembra che questa sia l’idea dello studente)
Tuttavia la ripetizione di questo flusso per una seconda volta in sequenza al precedente sembra incomprensibile, a meno chè abbia voluto correggere la prima parte aggiungendo nuove istruzioni
Inoltre tecnicamente le iterazioni sono errate. Vanno in loop.
![Page 10: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/10.jpg)
Semplifichiamo la soluzione dello studenteeliminando il primo blocco di iterazioni
![Page 11: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/11.jpg)
Correggiamo il precedente flowchart
L’iterazione esterna è numerata sul conteggio degli studenti. Questa soluzione non va bene
La lista termina quando il codice studente è uguale a 999999
Non sappiamo quanti siano le righe della lista.
Pertanto dobbiamo fare un’iterazione controllata da una condizione
La condizione di controllo dell’iterazione è proprio codiceStudente=999999
![Page 12: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/12.jpg)
L’iterazione interna non serve. Non confondere la selezione con
l’iterazione! La seconda iterazione interna controllata dalla
condizione codiceStudente=codiceStudentePrecedente è errata. Questa struttura è in realtà una selezione non un’iterazione.
C’è una sola iterazione perchè c’è una sola lista e quando si scorrono gli studenti simultaneamente si scorrono anche I loro voti!
![Page 13: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/13.jpg)
Floachart modificato e corretto
![Page 14: Correzione Flow Chart Riepilogo](https://reader033.vdocuments.pub/reader033/viewer/2022061207/5485f45bb47959050d8b4fcf/html5/thumbnails/14.jpg)
Let’s Have a Great Year!