DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Lab 5: 24 Aprile 2014
Marco D. Santambrogio – [email protected]
Gianluca Durelli – [email protected]
Ver. aggiornata al 13 Aprile 2014
Obiettivi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Esercitarsi sui costrutti visti a lezione
 Tutto il C fatto fino a qui
 In particolare: puntatori e passaggio per
indirizzo dei parametri alle funzioni
2
Esercizi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
•
•
•
•
•
•
•
Es0: Somma immaginari
Es1: Conta elementi
Es2: Primi
Es3: Calcolo punto medio
Es4: Occorrenze
Es5: Moltiplicazione tra matrici
Es6: Inserimento nel SIT
3
Exe 0: Numeri complessi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• L’utente inserisce due numeri complessi
(parte reale e parte immaginaria) e
l’elaboratore esegue l’operazione di
somma (tramite una funzione somma)
 Es: 3+4i + 5-6i = 8-2i
• Il programma chiede all’utente se vuole
calcolare un’altra somma. Se l’utente
inserisce il carattere ‘q’ il programma
termina, altrimenti ricomincia daccapo.
4
Numeri complessi: soluzione
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
5
Numeri complessi:
strutture dati e prototipi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
6
Numeri complessi: main
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
7
Numeri complessi: funzione somma
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
8
Esercizi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
•
•
•
•
•
•
•
Es0: Somma immaginari
Es1: Conta elementi
Es2: Primi
Es3: Calcolo punto medio
Es4: Occorrenze
Es5: Moltiplicazione tra matrici
Es6: Inserimento nel SIT
9
Exe 1: Conta elementi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Scrivere una funzione in C che:
 ricevuto in ingresso una matrice NxM di
interi ed un numero X
 determini e restituisca quanti numeri nella
matrice non sono divisibili per il numero
dato
10
Exe 2: Primi
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Data una matrice M RxCxZ (3 dimensioni)
popalata da interi positivi
• Si scriva un programma in C che, data la
matrice M, dopo aver richiesto le dimensioni e
averla fatta popolare dall’utente (numeri
positivi), dica quanti numeri primi contiene
 Per il conteggio dei numeri primi si deve scrivere
una funzione ContaPrimi che accetta la matrice M
come uno degli ingressi
 Si deve scrivere una funzione TestPrimo che, dato
un numero, dice se questo è primo o meno
11
Exe 3: Calcolo punto medio
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Si definisca una struttura dati in grado di
rappresentare un punto in un piano
cartesiano
• Si scriva quindi una funzione in C che
utilizzi tale struttura e che, ricevuti in
ingresso due punti p0 e p1, calcoli e
restituisca le coordinate del punto medio
pm del segmento che li collega
Es.:
 p0 = (1,1) , p1 = (2,2)
 pm = (1.5, 1.5)
12
Exe 4: Occorrenze
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Si scriva una funzione in C che:
 Presa in ingresso una matrice di caratteri
minuscoli di dimensione RxC, con R e C
definiti dall’utente
 Restituisce come risultato il numero delle
occorrenze per ciascuna delle vocali
presenti nella matrice
13
Exe 5: Moltiplicazione tra matrici
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Si scriva un programma in C che, date
due matrici di interi M1 e M2, ne calcola
la moltiplicazione
• La moltiplicazione viene svolta tramite
una funzione moltm
14
Exe 6: Inserimento nel SIT
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Si realizzi una struttura dati per la gestione
degli studenti del SIT, il Santa Institute of
Technology
• Per ogni studente ci interessa:
 Nome, cognome, data di nascita, numero di
telefono, email, matricola, indirizzo abitazione (via,
numero civico, città, provincia, cap), corso di
studio (identificato da 3 caratteri max) e i voti dei
31 esami che devono essere sostenuti per potersi
l’aureare
• Si scriva quindi una funzione in C che permette
l’inserimento degli studenti nel SIT
15
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• BUON LAVORO!
16
Scarica

V0 - PPT