INTRODUZIONE ALLA PROGRAMMAZIONE
- Anno accademico
- 2024/2025 Programmi anni precedenti
- Titolo corso in inglese
- INTRODUCTION TO PROGRAMMING
- Codice insegnamento
- CT0441 (AF:520917 AR:292000)
- Lingua di insegnamento
- Italiano
- 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
Inquadramento dell'insegnamento nel percorso del corso di studio
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 metodologicamente rigoroso per modellare problemi e formalizzarne le soluzioni.
Risultati di apprendimento attesi
i) conoscere gli elementi del linguaggio di programmazione C; comprendere, saper simulare frammenti di codice e saperne verificare l'esecuzione con opportuni casi di test.
ii) saper formalizzare problemi di media complessità, individuandone le regole che lo caratterizzano; progettare e implementare uno o più algoritmi che risolvono il problema dato.
iii) saper strutturare soluzioni moderatamente complesse, individuandone i sotto problemi, relative interazioni, strutture dati comuni e soluzioni algoritmiche.
iv) saper utilizzare la terminologia dei linguaggi di programmazione imperativi; saper documentare il codice.
v) saper lavorare in autonomia con la documentazione di riferimento del linguaggio di programmazione C.
Prerequisiti
Contenuti
- 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
Testi di riferimento
Modalità di verifica dell'apprendimento
Descrizione delle esercitazioni:
Le esercitazioni verranno assegnate durante lo svolgimento del corso e dovranno essere consegnate con cadenza mensile. In alternativa gli studenti dovranno sostenere una prova scritta aggiuntiva.
Le esercitazioni includono domande a risposta multipla e brevi esercizi, che valutano rispettivamente il raggiungimento dei risultati di apprendimento i) e ii). Le esercitazioni simulano la prova scritta.
Descrizione della prova scritta:
La prova scritta è composta da domande a risposta multipla e brevi esercizi, che valutano rispettivamente il raggiungimento dei risultati di apprendimento i) e ii). Gli esercizi richiedono la scrittura di brevi frammenti di codice.
Progetto finale:
Il progetto finale valuta il raggiungimento dei risultati di apprendimento iii) iv) e v).
La prova consiste nello sviluppo di una soluzione ad un problema moderatamente complesso che richiede l'implementazione completa di un programma, l'integrazione di diverse funzioni semplici e la definizione di opportune strutture dati.
Lo studente dovrà consegnare il codice e una breve relazione di accompagnamento e discutere il progetto con il docente.
La gradazione del voto è determinata da 70% prova scritta e 30% progetto finale.
Modalità di esame
Metodi didattici
L'alternanza di lezioni teoriche ed esercitazioni pratiche permette agli studenti di mettere in pratica le conoscenze acquisite e di auto-valutarsi.