Programma del corso di Laboratorio
di Programmazione Strutturata
Programma del corso
Obiettivo generale
Introduzione al linguaggio C, alle più comuni tecniche di
programmazione strutturata e alla teoria degli algoritmi, con
applicazioni (elementari!) di calcolo scientifico a problemi di
analisi matematica e algebra lineare.
Argomenti di programmazione strutturata in linguaggio C (e dintorni)
Struttura di un calcolatore (cenni); struttura fisico/logica dei
dischi (cenni); introduzione all'uso di Linux (cenni). Istruzioni
elementari di Input/Output. Strutture di controllo del flusso: tests,
il costrutto if-else, espressioni logiche; cicli, uso delle
istruzioni for, while, do-while. Utilizzo delle
functions: passaggio delle variabili in argomento per valore e per
indirizzo, funzioni ricorsive, puntatori alle funzioni, il paradigma
di programmazione "divide et impera". Il preprocessore: la
direttiva define. Gli array: vettori, matrici, vettori e
matrici come argomenti delle functions. Generazione di numeri
pseudocasuali. Operazioni di Input/Output su files: le
istruzioni/funzioni fopen, fclose, fscanf,
fprintf, fgets, sscanf, strchr,
strstr. Diagrammi di flusso: rappresentazione di algoritmi.
Complessità computazionale. Algoritmi di
ordinamento: insertion-sort e merge-sort. Strutture di
dati in C, liste.
Nozioni elementari di analisi numerica e calcolo scientifico
Rappresentazione sul calcolatore dei numeri interi e di quelli in
virgola mobile; errore di macchina; conversione dalla rappresentazione
decimale alla binaria e viceversa; calcolo delle operazioni
aritmetiche +, -, x e / per mezzo di operazioni (logiche)
elementari.
Calcolo approssimato del valore di una funzione per mezzo
della sua espansione in serie; soluzione di un'equazione del tipo
f(x)=0 con il metodo di bisezione; calcolo di integrali definiti
tramite il metodo del punto medio.
Creazione di matrici ortogonali tramite prodotto di rotazioni e test di
ortogonalità delle matrici; calcolo del determinante di una
matrice con il metodo di Laplace; soluzione di un sistema di
equazioni lineari: metodo di Cramer.
Brevissima introduzione all'utilizzo del software grafico
gnuplot.