Appello di Luglio “Fondamenti di Informatica”, A.A. 2016/2017, Data: 25/07/2017 Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I)
Pagina 1 di 4
Appello di Luglio “Fondamenti di Informatica”, A.A. 2016/17 Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I)
Docente: C. Esposito
Cognome:_________________________, Nome:____________________
Matricola:_________________________
Spazio riservato alla commissione esaminatrice
1 2 3 4 5 6 7 8 9 Totale
PARTE I
Nome Script:______________________________
Il candidato consideri i dati organizzati in una matrice C e gli array D e T:
<<Chains.txt>> Lombardia Lazio Campania Sicilia Piemonte Molise
Coop 10 20 25 18 23 14
Carrefour 7 14 3 10 12 4
Esselunga 14 2 0 0 8 1
Penny Market 21 28 30 24 17 7
Conad 24 32 26 11 19 3
<<Dipendenti.txt>> Coop Carrefour Esselunga Penny Market Conad
Numero Dipendenti 5 12 8 5 7
<<Costo.txt>> Lombardia Lazio Campania Sicilia Piemonte Molise
Costo Dipendente 35 20 15 12 30 8
• Una cella della matrice C rappresenta semanticamente la presenza di punti vendita di una determinata catena di grande distribuzione (riga) all’interno di una data regione italiana (colonna).
• Una cella dell’array D rappresenta il numero dei dipendenti per un generico punto vendita di una determinata catena di grande distribuzione (colonna);
Appello di Luglio “Fondamenti di Informatica”, A.A. 2016/2017, Data: 25/07/2017 Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I)
Pagina 2 di 4
• Una cella dell’array T rappresenta il costo per dipendente in un punto vendita di una generica catena di distribuzione in base all’appartenenza ad una data regione italiana (colonna).
La matrice C e gli array D e T contengono esclusivamente dati numerici (evidenziati nell’esempio). La matrice e gli array devono essere importati da tre file mediante un apposito script.
Esercizio 1
• Scrivere una funzione chiamata elevata_presenza che prenda in input la matrice C (catene di supermercati) e restituisca un array S, in cui ogni elemento S(i) è definito come segue:
𝑆 𝑖 = 1 𝑠𝑒 𝑠𝑖 ℎ𝑎 𝑢𝑛𝑎 𝑒𝑙𝑒𝑣𝑎𝑡𝑎 𝑝𝑟𝑒𝑠𝑒𝑛𝑧𝑎 0 𝑎𝑙𝑡𝑟𝑖𝑚𝑒𝑛𝑡𝑖
• Si noti che si è avuta una elevata partecipazione se il numero totale di punti vendita di una determinata catena di supermercati è superiore a 50.
Risultato ________________________________________________________
Esercizio 2
• Scrivere una funzione chiamata costo_per_catena che prenda in input la matrice C (catene di supermercati) e gli array D (dipendenti) e T (costi), e restituisca un array M.
• Ogni elemento dell’array M contiene la somma dei costi sostenuti dalle catene di supermercati per pagare i propri dipendenti nei vari punti vendita sparsi nelle varie regioni di interesse.
Esempio:
M(1) = 5*(10*35) + 5*(20 * 20) + 5*(25 * 15) + 5*(18 * 12) + 5*(23 * 30) + 5*(14 * 8)= 10715 => Somma dei costi degli stipendi dei dipendenti della Coop
Risultato ________________________________________________________
Esercizio 3
• Scrivere una funzione chiamata piu_capillare che prenda in input la matrice C (catene di supermercati) e restituisca l’indice della catena di
Appello di Luglio “Fondamenti di Informatica”, A.A. 2016/2017, Data: 25/07/2017 Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I)
Pagina 3 di 4
supermercati che ha il maggior numero di punti vendita nelle regioni italiane di interesse.
Risultato _______________________________________________________
Esercizio 4
• Scrivere una funzione chiamata meno_dipendenti che prenda in input la matrice C (catene di supermercati) e l’array D (dipendente) e restituisca l’indice della catena di supermercati con meno dipendenti nelle regioni italiane di riferimento.
Risultato ________________________________________________________
Esercizio 5
• Scrivere una funzione chiamata media_costo che prenda in input la matrice C (catene di supermercati) e gli array D (dipendenti) e T (costi), e restituisca la media della somma dei costi sostenuti dalle catene di supermercati per pagare gli stipendi dei dipendenti nei vari punti vendita.
Risultato ________________________________________________________
Esercizio 6
• Scrivere una funzione chiamata meno_costosa che prenda in input gli array D (dipendenti) e T (costi) e un indice_catena e restituisca l’indice della regione meno costosa per una data catene di supermercati (quella dell’indice fornito in ingresso), considerando la composizione di ogni punto vendita e il costo di ogni dipendente nelle varie regioni.
Risultato ________________________________________________________
Appello di Luglio “Fondamenti di Informatica”, A.A. 2016/2017, Data: 25/07/2017 Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I)
Pagina 4 di 4
PARTE II
Nome Script:______________________________
Esercizio 7
• Sono assegnate le seguenti coppie di valori (xi; yi):
x 1 2 3 4 5 6 7 8
y 0,6 2,4 5,4 9,6 15 21,6 29,4 38,4
• Determinare quale funzione meglio rappresenta tali valori e calcolarne i coefficienti.
Risultato ________________________________________________________
Nome M-Function _________________________________________________
Esercizio 8
• Data la seguente funzione: 𝑓 𝑥 = (7<789:), ottenere le uscite della funzione nei seguenti punti [0 0,5 1 1,5 2], disegnare il diagramma xy di questi punti, ed effettuare la quadratura della funzione f(x) nell’intervallo [0 2], riportando di seguito il valore numerico ottenuto.
Risultato ________________________________________________________
Nome M-Function _________________________________________________
Esercizio 9
• Calcolare la funzione derivata di f(x) impiegando le funzioni per il calcolo simbolico di MATLAB:
𝑓 𝑥 = 𝑥 − 1 log (𝑥< + 4)
e determinare il valore numerico assunto da tale funzione per x = 5.
Risultato ________________________________________________________
Nome M-Function _________________________________________________