DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Lab 4: 7 Aprile 2014Lab 4: 7 Aprile 2014
Marco D. Santambrogio – [email protected] Durelli – [email protected]
Ver. aggiornata al 6 Aprile 2014
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
ObiettiviObiettivi
• Esercitarsi sui costrutti visti a lezione Tutto il C fatto fino a qui In particolare: matrici e strutture
2
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
EserciziEsercizi
• Es0: Conta elementi (matrice)• Es1: Conta 0• Es2: Maggiori media• Es3: Occorrenze• Es4: Anagrafica• Es5: Scambia caratteri• Es6: Popola anagrafica con funzioni
3
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Conta elementi Exe 0: Conta elementi (matrice)(matrice)
• Scrivere un programma in C (no funzioni) che: ricevuto in ingresso una matrice NxM
di interi ed un numero X determini quanti numeri nella matrice
non sono divisibili per il numero dato
4
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Soluzione completa… Exe 0: Soluzione completa… base base
5
NOTA: cont DEVE
essere inizializzato a 0
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: I datiExe 0: I dati
6
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Popolare la matriceExe 0: Popolare la matrice
7
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Popolare la matriceExe 0: Popolare la matrice
8
Fisso la riga (i) per la colonna
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Popolare la matriceExe 0: Popolare la matrice
9
Fisso la riga (i) per la colonnaFisso la riga (i) e la colonna (j)
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Popolare la matriceExe 0: Popolare la matrice
10
Fisso la riga (i) per la colonnaFisso la riga (i) e la colonna (j)
Elemento in posizione:riga: i, colonna: j
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 0: Cerco gli elementi divisibiliExe 0: Cerco gli elementi divisibili
11
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
EserciziEsercizi
• Es0: Conta elementi (matrice)• Es1: Conta 0• Es2: Maggiori media• Es3: Occorrenze• Es4: Anagrafica• Es5: Scambia caratteri• Es6: Popola anagrafica con funzioni
12
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 1: Conta 0Exe 1: Conta 0
• Si scriva un programma in C (no funzioni) che: Presa in ingresso una matrice di interi
compresi tra 0 e 1 di dimensione RxC, con R e C definiti dall’utente
Restituisce come risultato il numero degli 0 presenti nella matrice
13
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 2: Maggiori mediaExe 2: Maggiori media
• Scrivere un programma che, ricevuto in ingresso un vettore di N interi, determini quanti numeri dell’array sono maggiori della sua media
14
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 3: OccorrenzeExe 3: Occorrenze
• Si scriva un programma in C (no funzioni) che: Presa in ingresso una matrice di interi
compresi tra 0 e 10 di dimensione RxC, con R e C definiti dall’utente
Restituisce come risultato il numero delle occorrenze per ciascuno dei valori presenti nella matrice
15
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 4: AnagraficaExe 4: Anagrafica
• Si realizzi una struttura dati per la gestione dell’anagrafica degli utenti del Santa’s Hospital
• Per ogni paziente ci interessa: Nome, cognome, data di nascita,
telefono, email, indirizzo abitazione (via, numero civico, città, provincia, cap)
• Si scriva quindi un programma in C, no funzioni, che permette l’inserimento dei pazienti nell’agrafica del Santa’s Hospital
16
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 5: Scambia caratteriExe 5: Scambia caratteri
• Si scriva un programma in C che, dati due caratteri, invoca una funzione swap che ne scambia i valori La funzione swap, per quanto visto fino ad
oggi a lezione, ha la seguente interfaccia:
void swap(char, char); Il programma funziona correttamente?
• Come si potrebbe risolvere l’eventuale problema?
17
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Exe 6: Anagrafica con funzioni Exe 6: Anagrafica con funzioni
• Si scriva un programma in C che, partendo dall’esercizio 4 di oggi, permetta che l’inserimento dell’anagrafica dei pazienti avvenga tramite l’invocazione di una funzione
• Si scriva quindi anche la funzione PopolaAnagrafica che permette l’inserimento dei pazienti nell’anagrafica del Santa’s Hospital
18
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• BUON LAVORO!
19