Esami
Section outline
-
Il corso di Programmazione e Algoritmi 1 e quello di Laboratorio di Programmazione 1 sono a tutti gli effetti due insegnamenti separati. Pertanto, si svolgeranno due esami distinti, con modalità completamente diverse tra di loro. Tra questi due esami non c'è nessuna relazione di propedeuticità, potete sostenerli nell'ordine che volete.
Le regole qui sotto valgono per gli studenti degli anni accademici 2023/24 e 2024/25. Per gli studenti degli anni accademici 2022/23 e precedenti ci sono regole leggermente diverse, per le quali vi invito a consultare la sezione specifica.-
-
Per il corso di Programmazione e Algoritmi 1, l'esame è costituito da una prova scritta ed una prova orale. La prova scritta è divisa in due parti, che si svolgono lo stesso giorno, una immediatamente dopo l'altra:
- Parte analogica: si svolge su carta, senza l'ausilio di computer o altri strumenti di calcolo. Comprende:
- esercizi di programmazione, in cui si chiede di sviluppare un programma secondo certe specifiche;
- esercizi in cui si chiede di mostrare la traccia di esecuzione passo-passo di un programma dato;
- esercizi e domande a risposta aperta (ad esempio, ma non esclusivamente, sulla shell di Linux, la complessità computazionale e gli algoritmi studiati studiati durante il corso).
- Parte digitale: è previsto l'uso dei computer dell'aula informatica, e consiste essenzialmente in esercizi di programmazione, più articolati di quelli della prova scritta. Durante lo svolgimento è possibile consultare le pagine su FAD, la documentazione ufficiale di Python e il libro di testo.
Fino all'appello di settembre 2025, l'eventuale prova in itinere svolta durante le lezioni costituisce parte integrate della prova scritta. Pertanto, il voto effettivo della prova scritta è incrementato con il voto della prova in itinere.Chi ha ottenuto nella prova scritta (+ prova in itinere) un voto maggiore o uguale a 18, a meno di diversa indicazione del docente, può verbalizzare direttamente il voto conseguito. Tuttavia, in questo modo, il voto massimo verbalizzabile è 26: un voto superiore ottenuto allo scritto sarà comunque verbalizzato come 26. Chi vuole un voto superiore a 26 deve obbligatoriamente sostenere la prova orale.
La prova orale consiste in domande teoriche o pratiche su tutto il programma del corso. Alla prova orale si accede su richiesta del docente o dello studente che abbia superato la prova scritta. Il voto conseguito nella prova orale costituirà il voto finale dell'esame, e potrà essere superiore o inferiore a quello della prova scritta.
Per partecipare all'esame dovete iscrivervi all'appello ufficiale del corso, quello denominato "PROGRAMMAZIONE E ALGORITMI 1". La data indicata nell'appello è quello della prova scritta.
- Parte analogica: si svolge su carta, senza l'ausilio di computer o altri strumenti di calcolo. Comprende:
-
-
-
L'esame per il corso di laboratorio prevede lo svolgimento di un progetto di programmazione (Chomp, trovate la descrizione dettagliata qui sotto), e la sua discussione con il docente. Il progetto può essere svolto da soli o in gruppo, ma la discussione sarà individuale.L'obiettivo didattico del progetto è quello di impegnarvi nello sviluppo di un programma leggermente più complesso di quelli con cui è possibile cimentarsi durante le ore di laboratorio. Perché l'obiettivo sia centrato, è importante che il programma proviate a scriverlo voi ! Questo non vuol dire fare tutto da soli. Potete ovviamente chiedere aiuto ad un amico più esperto, al docente o anche a ChatGPT e strumenti simili, purché cerchiate di ricorrervi quando siete in difficoltà, e non a priori per scansare tutto i lavoro!Obiettivo della discussione del progetto è quello di verificare che, comunque siano andate le cose, alla fine avete capito come funziona in dettaglio il progetto che avete consegnato. L'esame non prevede voto, ma solo una idoneità.Per partecipare all'esame dovete:
- iscrivervi all'appello ufficiale del corso denominato "LABORATORIO DI PROGRAMMAZIONE I";
- inviare al docente il vostro progetto, almeno tre giorni prima della data della discussione, tramite il modulo FAD "Consegna del progetto";
- scegliere uno slot preciso (data e ora) nel quale intendete sostenere il colloquio di laboratorio, tramite il modulo FAD "Turni per la discussione del progetto". Qualora al momento dell'iscrizione all'appello non siano ancora disponibili slot nel modulo FAD, riprovare in un giorno successivo. In linea di massimo, la pubblicazione degli slot per i colloqui vengono annunciate con un messaggio sul forum del corso.
Attenzione che la data indicata nell'appello "LABORATORIO DI PROGRAMMAZIONE I" è solo la prima delle date disponibili per lo svolgimento del progetto, e se vi dimenticate di prenotarvi alla pagina "Turni per la discussione del progetto" vi toccherà sostenere il colloquio negli slot lasciati liberi dagli altri studenti.-
Opened: Wednesday, 1 January 2025, 12:00 AM
Modulo per la consegna del progetto. Il progetto va consegnato almeno 3 giorni prima dell'appello a cui si intende partecipare.
-
-
-
Gli studenti degli a.a. 2022/23 e precedenti possono scegliere se sostenere l’esame in Python o Java.
- Se volete sostenere l'esame in Python, esso si svolgerà esattamente come quello per l’a.a. 2024/25. Tuttavia, poiché dal punto di vista formale fino all’a.a. 2022/23 la parte di laboratorio era accorpata a quella teorica in un singolo esame da 9 CFU, non sarà possibile verbalizzarlo finché non verrà superata sia la prova di Programmazione e Algoritmi 1 che quella di Laboratorio di Programmazione 1. Le due prove vanno superate nello stesso anno accademico. A parte questo, resta valido il fatto che non esiste propedeuticità tra le due prove.
Per partecipare all'esame, non dovete iscrivervi agli appelli ufficiali di "PROGRAMMAZIONE E ALGORITMI 1" e "LABORATORIO DI PROGRAMMAZIONE I", come indicato per l'anno accademico 2024/25, ma alle prove parziali denominate "Discussione progetto (2022/23 Python)" o "Prova scritta/pratica (2022/23 Python)". - Se volete sostenere l'esame in Java, dalla sessione estiva del 2025 (giugno 2025) l'esame consisterà esclusivamente in una prova orale, comprendente esercizi di programmazione e domande teoriche su algoritmi, complessità computazionale, etc... Il programma dell'esame è quello del corso di "Programmazione e Algoritmi 1" dell'a.a. 2022/23, che è l'ultimo che si è tenuto in Java.
Per partecipare all'esame, non dovete iscrivervi all'appello ufficiale di "PROGRAMMAZIONE E ALGORITMI 1", ma alla prova parziale denominata "Prova orale per programmazione in Java". Le prove orali si svolgeranno nel mio ufficio.
- Se volete sostenere l'esame in Python, esso si svolgerà esattamente come quello per l’a.a. 2024/25. Tuttavia, poiché dal punto di vista formale fino all’a.a. 2022/23 la parte di laboratorio era accorpata a quella teorica in un singolo esame da 9 CFU, non sarà possibile verbalizzarlo finché non verrà superata sia la prova di Programmazione e Algoritmi 1 che quella di Laboratorio di Programmazione 1. Le due prove vanno superate nello stesso anno accademico. A parte questo, resta valido il fatto che non esiste propedeuticità tra le due prove.
-
-
-
Giorno 28 novembre alle ore 11:00, nell'aula dove normalmente terremmo la lezione, si svolgerà una prova in itinere del corso di Programmazione e Algoritmi 1. Si tratta di una prova scritta con tre esercizi. Di questi tre, il primo sarà un esercizio di programmazione in cui bisogna scrivere un programma o una funzione secondo certe specifiche. Il secondo consisterà nella esecuzione passo passo di un programma. L'ultimo esercizio potrà avere la forma di domande a risposta aperta, domande a scelta multipla, o anche esercizi, sugli argomenti che non rientrano in quelli affrontati nei primi due esercizi, come: la shell di Linux, architettura hardware/software degli elaboratori, il linguaggio Python. Il voto della prova è un numero da 0 a 3, che si andrà a sommare al voto della prova scritta/pratica al momento dell'esame finale. La prova in itinere, pertanto, non esonera in alcun modo dallo svolgere tutti gli esercizi dell'esame finale.
Non è ammesso usare calcolatrici programmabili o materiale didattico. Per partecipare alla prova in itinere è obbligatorio prenotarsi sull'apposito modulo "Prova in itinere di Programmazione e Algoritmi 1". Il programma d'esame della prova comprende tutto quello fatto nel corso di programmazione dall'inizio fino alle funzioni (capitolo 5 del libro di testo).
La prova in itinere è valida fino all'appello di settembre 2025.
-
-