|
|
| Programmazione II
|
Finalità del corso: L'obiettivo del corso, che prosegue il cammino
iniziato con Programmazione I,
è quello di portare lo/a studente/ssa ad un buon livello di dimestichezza programmativa,
cosa che avverrà anche grazie e sopratutto alla realizzazione di un progetto da svolgere
per il corso di Laboratorio con cui
il corso quindi è fortemente integrato. Il linguaggio di programmazione è il C.
Programma di Massima
- Alcuni algoritmi di sorting: mergesort, selection-sort, insertion-sort, quicksort, heapsort,
come esempi di applicazione del Divide et Impera e di progettazione di algoritmi ricorsivi, nonchè
dell'uso opportuno di strutture dati.
- Tipi di dato astratti fondamentali, visti con varie implementazioni: Pile; Code; Alberi Binari,
con i principali metodi di attraversamento; Dizionari. Semplice gestione di stringhe e file di testo.
- Introduzione intuitiva al problema della complessità;
- Introduzione al problema della correttezza: dimostrazioni induttive di correttezza,
metodo degli invarianti (cicli).
Libri: Il libro di testo è il seguente:
- Kelley & Pohl C, didattica e programmazione. Pearson-AddisonWesley Ed.
Il libro sarà complementato da delle dispense fornite dal docente.
Altri libri che possono essere utili sono:
- Kernighan and Ritchie - The C programming language. Prentice-Hall
Questo è un'ottimo acquisto, anche se probabilmente il livello
è un po' troppo avanzato per questo corso. I soldi comunque sono ben spesi
perchè vi servirà
sicuramente anche in futuro. Dovrebbe esistere anche la versione in italiano.
- Deitel and Deitel - C How to Program, Third Edition (2001). Prentice-Hall
Introduzione alla programmazione C più graduale rispetto al Kernighan-Ritchie. Ne esiste
traduzione in italiano (edizioni Apogeo).
-
Jon Bentley, Programming Pearls, 2nd Edition Addison-Wesley
Un'ottimo acquisto!
- A. D. Marshall 1994-9 Programming in C
Un buon corso di programmazione C disponibile in rete.
-
A.V.Aho e J.D. Ullman, Fondamenti di Informatica, Zanichelli
- S. Ceri, D. Mandrioli, Istituzioni di Informatica, McGraw-Hill
- C. Batini, L. Carlucci Aiello, M. Lenzerini,
A. Marchetti Spaccamela, A. Miola, Fondamenti di programmazione
dei calcolatori elettronici, Franco Angeli.
[Home]