Programma del corso di C

I partecipanti al corso avranno a disposizione dei computer, dotati di compilatori C, sui quali sperimenteranno direttamente con semplici esercizi (in corsivo nel testo seguente) le nozioni apprese. Il corso consiste in tre sezioni. Ai partecipanti è richiesto di conoscere i concetti di file e directory, di saper usare un navigatore grafico per la gestione dei file (tipo explorer di windows), di saper utilizzare un semplice editor di testi (tipo notepad di windows). E soprattutto di non scoraggiarsi alla prima difficoltà e di avere pazienza con l'"insegnante".

Sezione A: Elementi di base

A1: Compilare un programma, input e output, alcuni tipi di dati.

  1. Linguaggi e compilatori. Compilare ed eseguire un programma.
  2. Funzioni printf() e scanf().
  3. Variabili e tipi di dato: int, long, float, double, puntatori.
  4. Organizzazione fisica di un dato in memoria. Cosa succede se sbaglio a passare dei parametri?
  5. Considerazioni sul concetto di programmazione

A2: Controllare l'esecuzione.

  1. Condizioni: if... else.Applicazione alla geometria.
  2. Salti: goto. Salti condizionati: if ... goto. Condizione di errore. Calcolo del modulo.
  3. Cicli con if ... goto: scrivere i numeri da 1 a 10. Uso di while. Uso di for.
  4. Calcolo di un integrale con for.
  5. Notazioni abbreviate: += , ++. Significato di ";"

A3: Definire e usare le funzioni.

  1. Concetto di funzione.Usare e scrivere funzioni.
  2. Prototipi.
  3. Ricorsività: calcolo del fattoriale.
  4. Come viene fisicamente gestita la ricorsività
  5. Direttive al preprocessore: #include e #define.

A4: Vettori e matrici.

  1. Vettori e matrici.Crivello di Eratostene.
  2. Puntatori. Funzioni malloc() e calloc().
  3. Bubble sort.
  4. Uso di &, *, [].

A5: Ancora puntatori!.

  1. Un po' di precisazioni sui puntatori.

A6: Usare il programma giusto.

  1. Uso di gnuplot.
  2. Scrivere uno script per gnuplot.
  3. Usare gnuplot e un programma C per ottenere un grafico.

Sezione B: Analisi dei dati e interazione con gli strumenti.

B1: Segnali monodimensionali.

  1. Leggere e scrivere un file .wav.
  2. Valutare l'ampiezza quadratica media.
  3. Operare sul segnale: distorsione, modulazione.
  4. Generare una forma d'onda e un rumore.

B2: FFT.

  1. Trasformata di Fourier e FFT.
  2. Convoluzione e filtraggio di frequenze.
  3. Spettro di potenza e correlazione.

B3: Immagini (segnali bidimensionali).

  1. Leggere e scrivere immagini in formato .pgm, .tif e .bmp.
  2. Modulare l'intensità e ritagliare parti di immagine.
  3. Spettro di potenza bidimensionale.

B4: Immagini .

  1. Trasformata bidimensionale.
  2. Filtraggio.
  3. Riconoscimento di oggetti in movimento.

B5: Uso dei driver.

  1. Uso delle funzioni open(), close(), read(), write().
  2. Esercizio: uso della porta parallela.
  3. Funzione ioctl(): operazioni insolite per periferiche particolari.
  4. Uso di ioctl() per gestire la porta parallela.
Torna alla pagina precedente.
Hosted by www.Geocities.ws

1