20801605 - FONDAMENTI DI INFORMATICA

Obiettivo del corso è fornire agli studenti gli strumenti metodologici e concettuali per la progettazione di algoritmi e l'implementazione di programmi per la soluzione automatica di problemi.
Obiettivi particolari sono:
- introdurre l'informatica come disciplina per la soluzione automatica di problemi;
- introdurre strumenti e metodologie per la progettazione di algoritmi;
- introdurre concetti, metodologie e tecniche fondamentali della programmazione.
Al termine del corso gli studenti saranno in grado di affrontare un problema di programmazione in tutte le sue parti, ovvero:
- comprendere, analizzare e formalizzare il problema
- progettare un algoritmo risolutivo utilizzando tecniche iterative
- implementare l'algoritmo in linguaggio C utilizzando opportune strutture dati e funzioni.

scheda docente | materiale didattico

Programma

Il corso "Fondamenti di Informatica" introduce concetti di base di informatica. Il corso illustra approcci e metodi per la progettazione di algoritmi per la risoluzione automatica di problemi matematici. Il corso inoltre illustra metodologie per l'implementazione di algoritmi come programmi in un calcolatore. I principali argomenti trattati nel corso sono i seguenti.

- Algoritmi, input e output, diagrammi di flusso, istruzioni condizionali e ripetitive, proprietà degli algoritmi, esecuzione di algoritmi, problemi iterativi, progettazione top-down di algoritmi, progettazione di algoritmi iterativi.

- Fondamenti di programmazione, compilazione ed esecuzione dei programmi, rappresentazione binaria dell'informazione, variabili, espressioni, tipi, istruzioni condizionali e ripetitive in C, errori, stile di programmazione, funzioni, legame fra parametri e restituzione valori, stringhe, array, algoritmi iterativi su array e stringhe.

Testi Adottati

Autore: Bellini, Guidi
Titolo: Linguaggio C - Una guida alla programmazione con elementi di Objective-C
Edizione: Quinta edizione
Editore: McGraw-hill
Anno: 2013


Bibliografia Di Riferimento

Autori: Brian W. Kernighan, Dennis M. Ritchie Titolo: Il linguaggio C: ANSI C - Seconda Edizione Editore: Jackson Libri/Prentice Hall

Modalità Erogazione

Lezioni frontali, esercitazioni in aula, esercitazioni in laboratorio. Tutto il materiale presentato a lezione è a disposizione sulla piattaforma moodle1.ing.uniroma3.it.

Modalità Valutazione

L'esame si svolge al computer, ha la durata di due ore, e consiste di due parti: la prima parte consiste di dieci domande a risposta multipla o breve, la seconda parte richiede di progettare due algoritmi e di implementarli al calcolatore nel linguaggio di programmazione C. Oltre agli appelli istituzionali sono previste due prove di esonero che si svolgono durante il corso. Entrambe sono costituite da domande a risposta multipla o breve e da esercizi di progettazione e di programmazione; le due prove vertono sugli argomenti della prima e della seconda parte del corso. Ciascuna delle due prova ha la durata di due ore. Nel periodo di emergenza COVID-19 l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020. In particolare, l'esame consisterà di una prova scritta e di una prova orale, entrambe svolte per via telematica. La prova orale è determinante per l’attribuzione della valutazione finale.