






Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Slide delle lezioni del professor Del Bolgia- informatica
Tipologia: Dispense
1 / 10
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!







Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 2 of 20
Le attività che svolgiamo possono essere schematicamente identificate in: 1- Conoscenza di come si risolve il problema 2 - Effettiva capacità di risolvere il problema 3 - Capacità di descrivere il procedimento di soluzione del problema
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 3 of 20
Schema Istruttore - Esecutore
Problema Analisi Soluzioneanalitica Descrizione
Soluzione descrittiva
Interpretazione Descrizioneinterpretata Attuazione
Soluzione effettiva
Primo soggetto istruttore
Secondo soggetto esecutore
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 4 of 20
Istruttore Descrizione dell’esecuzione del problema: 1- effettuata avendo scomposto il problema nelle sue singole azioni elementari 2 - descrivere ogni azione elementare in modo che non ci sia nessuna ambiguità durante l’esecuzione
3 - le azioni elementari devono essere poste in una forma tale che l’esecutore sia in grado di comprendere pienamente ciò che deve svolgere nella giusta sequenza delle azioni. Le azioni elementari sono indicate con il termine ISTRUZIONI / AZIONI ELEMENTARI La descrizione è indicata con il termine PROCEDURA EFFETTIVA / ESECUTIVA
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 7 of 20
Ambiguità
Le ambiguità derivano spesso dal fatto che lo stesso problema può essere risolto secondo procedure diverse o sequenzialità diverse oppure su termini del linguaggio non specifici. Per evitare ciò è necessario: 1 - il linguaggio che l’esecutore deve interpretare sia definito in modo completo e non ambiguo (caratteristica sintattica)
2 - l’insieme delle azioni che l’esecutore è in grado di compiere deve essere definito e tali azioni devono essere elementari per l’esecutore (caratteristica pragmatica)
3 - l’insieme delle regole di associazione tra i costrutti del linguaggio e azioni deve essere definito e non ambiguo (caratteristica semantica)
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 8 of 20
Algoritmo
Le soluzioni a problemi per esecutori che siano caratterizzate secondo le indicazioni 1, 2, 3 vengono definiti
ALGORITMI
Gli algoritmi sono quindi una sequenza finita di istruzioni, fornite in un linguaggio definito, non ambigue attraverso le quali un essere umano addestrato o una macchina svolgono a partire da informazioni d’ingresso un compito al fine di ottenere una soluzione in un tempo finito
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 9 of 20
Determinare tra due numeri x ed y qual'è il maggiore
P 1 - leggi il valore ed assegnalo alla variabile x P 2 - leggi il valore ed assegnalo alla variabile y P 3 – calcola la differenza x - y P 4 – assegna il risultato alla variabile z P 5 – rispondi alla domanda z è maggiore di 0 se la risposta è affermativa salta al punto P 6 altrimenti (risposta negativa) esegui il passo P 7. P 6 – stampa la frase “Il numero maggiore è “ seguita dal valore contenuto in x e prosegui con il passo P 8 P 7 – stampa la frase “Il numero maggiore è “ seguita dal valore contenuto in y e prosegui con il passo P 8 P 8 – termina l’esecuzione
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 10 of 20
Rappresentazione degli algoritmi
La costruzione dell’algoritmo per la risoluzione del problema è un passo fondamentale per ottenere al soluzione attraverso un esecutore
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 13 of 20
Diagramma di flusso esempio precedente Inizio
Fine
Leggi X Leggi Y
Prepara spazio per x, y, z
SI NO
Domanda Z > 0
CALCOLA X-Y e salvalo in Z
Stampa la frase “Il numero maggiore è ” Valore di X
Stampa la frase “Il numero maggiore è ” Valore di Y
X Spazio dati in relazione alla tipologia Y Spazio dati in relazione alla tipologia Z Spazio dati in relazione alla tipologia
Memoria dati
Diagramma di flusso per ricerca su n valori
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 14 of 20
Inizio
Fine
Leggi X Leggi Y
Prepara spazio per x, y, z
SI (^) Valori da considerareCi sono ancora NO ?
Z = max ( X, Y)
X Spazio dati in relazione alla tipologia Y Spazio dati in relazione alla tipologia Z Spazio dati in relazione alla tipologia T "Il massimo tra i numeri è " (costante testo da stampare)
Memoria dati
Leggi X
Z = max (X, Z )
CALCOLARE il valore massimo tra tanti valori da inserire
Il valore di ritorno C ( slide successiva)viene assegnato a Z
Stampa la frase T e valore Z
Stampa la frase T e valore Z
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 15 of 20
SubRoutine calcola max(A, B)
Trasferimento dati X su A e Y su B
Restituisce C
CALCOLA A-B e salvalo in C
A Spazio dati primo operando B Spazio dati secondo operando C Spazio dati ritorno valore massimo
Memoria dati
Il valore massimo tra A e B all'uscita della sequenza si trova nello spazio C che viene restituito al chiamante
SI NO
Domanda C > 0 ?
C A C B
Informatica - Ingegneria Medica - 2018 - Franco Del Bolgia Slide 16 of 20
Variabili temporanee - scambio dati
Scambiare x con y se y < x Passo (^) X Y 1 8 5 2 Y^ X^8 3 8 8 4 X^ Y^8 5 8 8 1 8 5 2 X^ Y^5 3 5 5 4 Y^ X^5 5 5 5
Ruolo delle variabili temporanee
Passo (^) T X Y 1 8 5 2 T^ X^8 8 3 8 8 5 4 X^ Y^8 5 5 8 5 5 6 Y T^8 5 7 8 5 8
1 8 5 2 T^ Y^5 8 3 5 8 5 4 Y X^5 8 5 5 8 8 6 X T^5 5 7 5 5 8
CONTROLLA CHE SIA USCITO TUTTO
E’ USCITO TUTTO?^ ATTESA 10 sec
E’ PIENA?
NUMERO = NUMERO + 1
NUMERO > 4?
NO
NO
NO
SI
SI
SI
CHIUDI IL GAS PRENDI IL NUMERO DI TAZZINE 4
VERSA IL CAFFE NELLA TAZZINA NUMERO
NUMERO = 1
PRENDI UN’ALTRA TAZZINA
FINE PROCESSO
Multifunzionalità Mentre aspetto eseguo altre operazioni diverse