1 / 13

Lab 6: 15 Maggio 2014

Lab 6: 15 Maggio 2014. Marco D. Santambrogio – marco.santambrogio@polimi.it Gianluca Durelli – durelli@elet.polimi.it Ver. aggiornata al 10 Maggio 2014. Obiettivi. Esercitarsi sui costrutti visti a lezione Tutto il C fatto fino a qui

crescent
Download Presentation

Lab 6: 15 Maggio 2014

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lab 6: 15 Maggio 2014 Marco D. Santambrogio – marco.santambrogio@polimi.it Gianluca Durelli – durelli@elet.polimi.it Ver. aggiornata al 10 Maggio 2014

  2. Obiettivi • Esercitarsi sui costrutti visti a lezione • Tutto il C fatto fino a qui • In particolare: puntatori e passaggio per indirizzo dei parametri alle funzioni

  3. Esercizi • Es0: Recupera Valore • Es1: Sostituisci Numero • Es2: Valori circostanti • Es3: Linea Spezzata • Es4: Media Studenti • Es5: Matrice 2x2 Inversa • Es6: Propagazione

  4. Exe 0: Recupera valore • Scrivere una funzione in C che: • Ricevuta in ingresso una matrice NxM (con dimensioni scelte dall’utente) ed una posizione (i,j) della matrice • Ritorni il valore della matrice nella posizione (i-1, j) quando questo e’ significativo, 0 altrimenti

  5. Exe 0: Recupera valore (main)

  6. Exe 0: Recupera valore (funzione)

  7. Exe 1: Sostituisci Numero • Scrivere una funzione in C che: • ricevuta in ingresso una matrice NxM di interi e due numeri X ed Y • Sostituisca ogni occorrenza del numero X nella matrice con il numero Y e viceversa • Nota: Le dimensioni N ed M ed i numeri X ed Y devono poter essere scelti dall’utente

  8. Exe 2: Valori Circostanti • Si scriva una funzione in C che: • Ricevuta in ingresso una matrice di dimensione NxM (con dimensioni scelte dall’utente) ed una posizione (i,j) della matrice • Restituisca la somma dei valori connessi alla posizione scelta • Nota: Due valori sono connessi se sono adiacenti in orizzontale, verticale oppure obliquo.

  9. Exe 3: Line Spezzata • Si scriva una funzione che: • Ricevuto un ingresso un vettore di elementi che rappresentano dei punti in un piano cartesiano • Calcoli la lunghezza della linea spezzata che li collega • Nota: Si definiscano opportune strutture dati per risolvere l’esercizio

  10. Exe 4: Media Studenti • Si realizzi una struttura dati per la gestione dell’anagrafica degli studenti • Per ogni studente ci interessa: • Nome, cognome e media (con decimali) • Si scrivano quindi due funzione in C: • La prima per inserire gli studenti nell’anagrafica • La seconda che permetta di salvare in un array tutti e soli gli studenti che hanno una media compresa tra un intervallo scelto dall’utente

  11. Exe 5: Matrice 2x2 Inversa • Si scriva una funzione C che ricevuta in ingresso una matrice 2x2 ne calcoli l’inversa

  12. Exe 6: Propagazione • Scrivere una funzione in C che: • Riceva in ingresso una matrice di dimensioni NxM (scelte dall’utente) inizializzata a 0 • Riceva in ingresso una posizione della matrice (I,j) da inizializzare ad un valore X • Propaghi il valore iniziale secondo le seguenti regole: • La matrice va sempre scorsa da destra verso sinistra e dall’alto verso il basso • Se una cella ha valore 0 ed e’ circondata da celle non nulle allora questa assumera’ un valore pari alla somma dei valori contenuti nelle celle adiacenti • L’algoritmo si ferma quando non esistono piu’ celle con valore 0

  13. BUON LAVORO!

More Related