DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 4 – Info B Marco D. Santambrogio – [email protected] Matteo Ferroni – [email protected] Ver. aggiornata al 16 Novembre 2015 Calendario dei Labs: MATLAB DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • 15 Dic 2015, 10.30am-12.30pm, @ B6.27 MATLAB: Ambienti di sviluppo e primi codici • 12 Gennaio 2016, 10.30am-12.30pm, @ B6.27 MATLAB: strutture di controllo, tipi di dato strutturato, e vettori • 19 Gennaio 2016, 10.30am-12.30pm, @ B6.27 MATLAB: funzioni ricorsive • 26 Gennaio 2016, 10.30am-12.30pm, @ B6.27 MATLAB: funzioni ricorsive, funzioni di ordine superiore, grafici 2D e 3D 2 Per macchine PoliMI DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE https://virtualdesktop.polimi.it 3 Lab 4: Agenda DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Warm Up (20’) Confronta Stringhe • Qualche cosa un pò più divertente (70’) Matrice trasposta (30’) Schedina (40’) • Altri exe… (30’) Struttura dati 4 Lab 4: Agenda DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Warm Up (20’) Confronta Stringhe • Qualche cosa un pò più divertente (70’) • Altri exe… (30’) 5 Confronta Stringhe DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Si scriva in C un programma che date due stringhe inserite dall’utente dice quale delle due precede alfabeticamente l’altra. Non si può usare la funzione strcmp Esempio 1 - dati: array1=”pippo” - array2=”pio” Esempio 1 - risultato: L’array2 precede l’array1 Esempio 2 - dati: array1=”super”- array2=”supercalifragili” Esempio 2 - risultato: L’array1 precede l’array2 6 Confronta Stringhe DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 7 Confronta Stringhe: Inserimento DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 8 Confronta Stringhe: Confronto DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 9 Confronta Stringhe: Risultato DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 10 Versione corretta ;) DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 11 Lab 4: Agenda DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Warm Up (20’) • Qualche cosa un pò più divertente (70’) Matrice trasposta (30’) Schedina (40’) • Altri exe… (60’) 12 Matrice trasposta DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Si definisce matrice trasposta AT di A la matrice ottenuta scambiando ordinatamente le righe con le colonne della matrice A. • Es: é ù é ù ê A =ê ê ë 2 4 8 ú 3 9 27 ú 4 16 64 úû ê A =ê ê ë T 2 3 4 ú 4 9 16 ú 8 27 64 úû 13 Matrice trasposta DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • In pratica, l’elemento a(i,j) della matrice A diventa l’elemento a(j,i) della matrice AT. • Scrivere un programma che calcoli la matrice trasposta di una matrice 4x4 (4 righe, 4 colonne) di numeri reali maggiori o uguali a 0. 14 Matrice trasposta – Soluzioni DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 15 Matrice trasposta: Inserimento DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 16 Matrice trasposta: Calcolo DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 17 Matrice trasposta V2 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 18 Matrice trasposta V2 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 19 Schedine: problema DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Il programma, partendo da un array di dimensione prefissata che contiene in ogni cella: data della giocata colonna con i tredici segni • Copia in un altro vettore solo le giocate dell’anno 2010 • Quindi, visualizza queste giocate. Schedine: dati DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Schedine: inserimento dati DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Schedine: copia valori DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Schedine: stampa dei risultati DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 4: Agenda DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Warm Up (20’) • Qualche cosa un pò più divertente (70’) • Altri exe… (30’) Struttura dati 25 Struttura Dati DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Si definisca una struttura dati per memorizzare il carrello d’acquisto di un sito web: Email utente Totale Carrello ... altro ? ... Elenco prodotti ordinati • Ogni prodotto contiene: – – – – – Codice prodotto Nome prodotto Quantita’ ordinata Costo unitario Costo Totale 26 Struttura Dati DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Data la struttura precedentemente descritta, si scrivano tre elementi che permettano: l’inserimento di un acquisto il calcolo dei totali dell'ordine la stampa del contenuto del carrello 27 Struct DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 28 Inserimento DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 29 Inserimento DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 30 Calcolo ordine DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 31 Stampa carrello DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 32 Fonti per lo studio + Credits DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Fonti per lo studio Informatica arte e mestiere, S. Ceri, D. Mandrioli, L. Sbattella, McGrawHill • Capitolo 5 • Credits Emanuele Panigati https://sites.google.com/site/engpanigati/ 33