DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Lab 4: 7 Aprile 2014
Marco D. Santambrogio – [email protected]
Gianluca Durelli – [email protected]
Ver. aggiornata al 6 Aprile 2014
Obiettivi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Esercitarsi sui costrutti visti a lezione
 Tutto il C fatto fino a qui
 In particolare: matrici e strutture
2
Esercizi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
•
•
•
•
•
•
•
Es0: Conta elementi (matrice)
Es1: Conta 0
Es2: Maggiori media
Es3: Occorrenze
Es4: Anagrafica
Es5: Scambia caratteri
Es6: Popola anagrafica con funzioni
3
Exe 0: Conta elementi (matrice)
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• 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
Exe 0: Soluzione completa… base
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
5
Exe 0: I dati
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
6
Exe 0: Popolare la matrice
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
7
Exe 0: Popolare la matrice
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Fisso la riga (i) per la colonna
8
Exe 0: Popolare la matrice
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Fisso la riga (i) per la colonna
Fisso la riga (i) e la colonna (j)
9
Exe 0: Popolare la matrice
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Fisso la riga (i) per la colonna
Fisso la riga (i) e la colonna (j)
Elemento in posizione:
riga: i, colonna: j
10
Exe 0: Cerco gli elementi divisibili
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
11
Esercizi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
•
•
•
•
•
•
•
Es0: Conta elementi (matrice)
Es1: Conta 0
Es2: Maggiori media
Es3: Occorrenze
Es4: Anagrafica
Es5: Scambia caratteri
Es6: Popola anagrafica con funzioni
12
Exe 1: Conta 0
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• 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
Exe 2: Maggiori media
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere un programma che, ricevuto in
ingresso un vettore di N interi, determini
quanti numeri dell’array sono maggiori
della sua media
14
Exe 3: Occorrenze
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• 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
Exe 4: Anagrafica
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• 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
Exe 5: Scambia caratteri
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• 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
Exe 6: Anagrafica con funzioni
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• 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
Scarica

V2 - PPT