DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 6: 13 Maggio 2013 Gianluca Durelli – [email protected] Marco D. Santambrogio – [email protected] Ver. aggiornata al 13 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 • • • • • • Pari e dispari Conta matrice Modifica matrice Prodotto tra matrici Cubo posizione conta v1 Cubo posizione conta v2 3 Esercizio 1 - Pari e dispari DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Scrivere un programma che, ricevuto in ingresso un vettore di N interi, determini quanti numeri pari e dispari ci sono nel vettore. • Vincolo: Utilizzare una funzione per riempire il vettore Utilizzare una funzione per calcolare il numero di numeri pari Utilizzare una funzione per il calcolo dei numeri dispari 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 siano maggiori del numero dato. • Si risolva l’esercizio in 2 modi: Utilizzando la funzione: • int contaMatrice(int mat[N][M], int x) • Ritorna il numero degli elementi della matrice mat che sono maggiori di x. Utilizzando la funzione • void contaMatrice(int mat[N][M], int x, int *conta) • Il numero degli elementi della matrice che soddisfano la disuguaglianza è 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, modifichi la matrice facendo in modo che ogni numero dispari venga moltiplicato per 2 ed ogni numero pari diviso per 2. • Vincolo: Si utilizzi una funzione modificaMatrice per effettuare le modifiche (moltiplicazioni e divisioni) alla matrice in ingresso 6 Esercizio 4 – Prodotto tra matrici DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Scrivere un programma che, e in ingresso 2 matrici di dimensioni scelte dall’utente: Verifichi che le loro dimensioni siano compatibili con l’operazione di prodotto tra matrici Effettui la moltiplicazione tra le matrici • Vincolo: Si utilizzino almeno 2 funzioni: • Una per il controllo sulle dimensioni delle matrici • Una per il calcolo del loro prodotto 7 Esercizio 5 – Cubo conta pari v1 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Scrivere un programma che, e in ingresso un cubo di interi NxMxZ conti quanti numeri pari sono presenti in esso • Vincolo: Si utilizzino la seguente funzione per il calcolo del numero di numero primi presenti: • int conta(int mat[N][M][Z]); 8 Esercizio 6 – Cubo conta pari v2 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE • Scrivere un programma che, e in ingresso un cubo di interi NxMxZ conti quanti numeri pari sono presenti in esso • 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