INTRODUCTION TO COMPUTER PROGRAMMING

Anno accademico
2024/2025 Programmi anni precedenti
Titolo corso in inglese
INTRODUCTION TO COMPUTER PROGRAMMING
Codice insegnamento
CT0665 (AF:521402 AR:292746)
Modalità
In presenza
Crediti formativi universitari
6
Livello laurea
Laurea
Settore scientifico disciplinare
ING-INF/05
Periodo
I Semestre
Anno corso
1
Sede
VENEZIA
Spazio Moodle
Link allo spazio del corso
Il corso si propone di introdurre gli elementi base della programmazione imperativa per formulare soluzioni algoritmiche a problemi di complessità limitata.

Lo studente acquisirà conoscenza e comprensione dei principi fondanti dell'informatica, relativamente a linguaggi imperativi e algoritmi di base.
In particolare acquisirà la capacità di usare un linguaggio di programmazione come strumento per modellare problemi e formalizzarne le soluzioni.
Al termine del corso lo studente dovrà essere in grado di utilizzare un ambiente di programmazione di tipo professionale, di editare, debuggare, compilare ed eseguire programmi su piattaforma Unix-like e Windows. In particolare dovrà saper:
- formalizzare un problema di limitata complessità (fornendone la specifica);
- progettare una o più soluzioni ad esso (sviluppando algoritmi corrispondenti);
- implementare tali soluzioni utilizzando linguaggi di programmazione di tipo imperativo;
- verificare l'esecuzione dei programmi proposti con opportuni casi di test.
Non è richiesto alcun prerequisito
- Introduzione al linguaggio di programmazione C
- Variabili e tipi fondamentali.
- Flusso del controllo
- Funzioni
- Array, puntatori e stringhe
- Computazione Iterativa e Computazione Ricorsiva
- Memoria Dinamica
- Abstract Data Types
- Strategie di problem solving
Paul J. Deitel, Harvey M. Deitel. Il linguaggio C. Fondamenti e tecniche di programmazione. 8/Ed. Pearson. 2016.
L'esame consiste in una prova scritta, nello svolgimento delle esercitazioni settimanali ed un progetto finale. Per superare l'esame, lo studente dovrà ottenere un voto sufficiente in tutte e tre le modalità di valutazione.

Descrizione delle esercitazioni:

Le esercitazioni mirano a sviluppare le capacità di problem solving dello studente, la conoscenza del linguaggio C e la capacità di codificare l’algoritmo risolutivo ideato nel linguaggio di programmazione.

Le esercitazioni verranno assegnate periodicamente durante lo svolgimento del corso e dovranno essere consegnate con cadenza settimanale. In alternativa gli studenti possono chiedere di sostenere una prova scritta aggiuntiva. Quest'ultima soluzione è consigliata per gli studenti part-time.

Descrizione della prova scritta:

La prova scritta mira a valutare le capacità di problem solving dello studente, la conoscenza del linguaggio C e la capacità di codificare l’algoritmo risolutivo ideato nel linguaggio di programmazione. Questa parte dell’esame può essere superata in due modi:
Con una singola prova scritta nelle date previste degli appelli.
Con due prove intermedie, una collocata durante lo svolgimento del corso e la seconda in concomitanza con il primo appello del corso.


Progetto finale:

Il progetto finale mira a valutare l'abilità nell'applicare le capacità acquisite alla soluzione di problemi maggiormente strutturati.
La valutazione del progetto prevede una discussione orale e concorre alla determinazione del punteggio finale del corso.

In casi particolari comprovati per i quali lo studente non sia in grado di svolgere le esercitazioni con regolarità, nello specifico gli STUDENTI CON PROBLEMI DI SALUTE CERTIFICATI O CHE STIANO SVOLGENDO UN PERIODO FUORI SEDE, è possibile effettuare una prova alternativa per coprire parzialmente o integralmente le esercitazioni.
Lezioni frontali ed esercitazioni.
L'alternanza di lezioni teoriche ed esercitazioni pratiche permette agli studenti di mettere in pratica le conoscenze acquisite e di auto-valutarsi.
Inglese
scritto e orale
Programma definitivo.
Data ultima modifica programma: 19/04/2024