Esercizi - Gianluca Durelli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Lab 6: 16 Maggio 2013
Gianluca Durelli – [email protected]
Marco D. Santambrogio – [email protected]
Ver. aggiornata al 15 Maggio 2013
Argomenti
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Argomenti di questo laboratorio:
 Funzioni
 Passaggio parametri a funzioni
• Obiettivo:
 Risolvere i primi 3 esercizi
2
Esercizi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
•
•
•
•
•
•
Media
Conta matrice
Modifica matrice
Operazione tra matrici
Cubo posizione conta v1
Cubo posizione conta v2
3
Esercizio 1 – 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.
• Vincolo:
 Utilizzare una funzione per riempire il
vettore
 Utilizzare una funzione per calcolare la
media degli elementi inseriti nell’array
 Utilizzare una funzione per il calcolo del
numero di elementi maggiori della media
4
Esercizio 2 – Conta Matrice
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere un programma 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.
• Si risolva l’esercizio in 2 modi:
 Utilizzando la funzione:
• int contaMatrice(int mat[N][M], int x, int n, int m)
• Ritorna il numero degli elementi della matrice mat che
non sono divisibili per x.
 Utilizzando la funzione
• void contaMatrice(int mat[N][M], int x , int n, int m, int
*conta)
• Il numero degli elementi della matrice non sono divisibili
per x è memorizzato in conta
5
Esercizio 3 – Modifica Matrice
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere un programma che, ricevuto in
ingresso una matrice NxM di interi ed un
numero intero x, modifichi la matrice facendo
in modo che ogni numero diviso (moltiplicato)
per x a seconda che questo sia divisibile (non
divisibile) per x.
• Vincolo:
 Si utilizzi una funzione modificaMatrice per
effettuare le modifiche (moltiplicazioni e
divisioni) alla matrice in ingresso.
6
Esercizio 4 – Operazione tra matrici
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere un programma che, ricevutee in
ingresso 2 matrici di dimensioni scelte
dall’utente:
 Verifichi che abbiano la stessa dimensione
 Effettui la seguente operazione:
• Le matrici inserite dall’utente sono di dimensione NxM
• a,b rappresentano i singoli elementi delle matrici
i N , jM
a b
i 0, j 0
ij ij
• Vincolo:
 Si utilizzino almeno 2 funzioni:
• Una per il controllo sulle dimensioni delle matrici
• Una per il calcolo
7
Esercizio 5 – Cubo conta divisibili v1
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere un programma che, ricevuto in
ingresso un cubo di interi di dimensione
NxMxZ ed un numero intero x, conti
quanti numeri divisibili per x sono
presenti nel cubo
• Vincolo:
 Si utilizzi la seguente funzione per il
calcolo del numero :
• int conta(int mat[N][M][Z]);
8
Esercizio 6 – Cubo conta divisibili v2
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere un programma che, ricevuto in
ingresso un cubo di interi di dimensione
NxMxZ ed un numero intero x, conti
quanti numeri divisibili per x sono
presenti nel cubo
• Vincolo:
 Si utilizzino la seguente funzione per il
calcolo del numero di numero primi
presenti:
• int conta(int *mat, int N, int M, int Z);
9
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• BUON LAVORO!
10