Programmazione 2 (canale P-Z)

Corsi di Laurea in Informatica/Tecnologie Informatiche

Anno Accademico 2005/06


Stefano Guerrini & Andrea Sterbini

guerrini at di.uniroma1.it




Le verbalizzazioni/orali dello scritto del 22/02/2007, si terranno
mercoledì 28 alle ore 10.00
nell'ufficio del prof. Guerrini

I risultati dei compiti saranno pubblicati lunedì 26/02 in serata.




Voti Appello 19/09/06

Voti Appello 18/07/06

Voti Appello 15/06/06

Somma Voti Esoneri

Risultati del II esonero

Risultati del I esonero



wip.gif



[ Lezioni ] [ Sorgenti ] [ Esercitazioni ] [ Corso 2005-06 ] [ Pagina principale ]


Orario delle Lezioni

Le lezioni si tengono in Aula 5 di Matematica

  • Lunedì 13.00-15.00

  • Mercoledì 13.00-14.00

  • Venerdì 16.00-18.00 (esercitazioni)

Ricevimento

Durante il periodo delle lezioni, Martedì dalle 11.00 alle 12.00, nell'ufficio del docente in via Salaria.

Al termine del corso, su appuntamento, se non verrà comunicato un altro orario di ricevimento.

Passaggi di canale

Possono sostenere l'esame con le modalità e negli appelli di questo canale:

  1. gli studenti del primo anno regolarmente afferenti al canale P-Z, ovvero
    • gli studenti del primo anno con iniziale del cognome nell'intervallo P-Z che all'inizio dell'anno non hanno richiesto e ottenuto il passaggio ad un altro canale,
    • gli studenti del primo anno che all'inizio dell'anno hanno richiesto e ottenuto il passaggio al canale P-Z;
  2. gli studenti iscritti ad anno successivo al primo o fuori corso con iniziale del cognome nell'intervallo P-Z;
  3. gli studenti che non rientrano nella categorie precedenti che entro il 30 marzo segnalano al docente (via e-mail) di voler sostenere l'esame negli appelli e con il programma di questo canale.

NOTA! Come da regolamento del corso di laurea, la suddivisione per canali vale solo per gli studenti del primo anno, gli altri studenti possono decidere di frequentare e sostenere gli esami negli appelli e con il programma di questo canale indipendentemente dall'iniziale del cognome. Si fa però notare che, questa scelta deve corrispondere all'effettiva intenzione di frequentare le lezioni o quantomeno di studiare il programma di questo canale e che, una volta scelto il canale a cui si intende afferire non è possibile sostenere gli esami con gli altri canali. Per questo motivo, gli studenti che in base all'iniziale del cognome non afferirebbero a questo canale devono segnalare al docente che intendono passare al suo canale entro un mese dall'inizio delle lezioni.

La lista degli studenti del primo anno che hanno chiesto e ottenuto il cambio di canale è consultabile alla pagina http://w3.uniroma1.it/dipinfo/dbinfo/verbali/cambi%20di%20canale%20autorizzati.pdf

Programma

Richiami di programmazione ricorsiva: i fondamenti della ricorsione; lo stack delle chiamate ricorsive; esempi di programmi ricorsivi su vettori e matrici. Richiami su strutture dinamiche ricorsive: le liste.

Efficienza degli algoritmi: spazio e tempo. Lo spazio: stack e heap. Il tempo: costo delle operazioni elementari, costo di un ciclo, operazione dominante, caso peggiore, analisi asintotica. Analisi di un esempio: ricerca lineare e ricerca dicotomica. Caso peggiore e caso medio: le tavole hash.

Commentare i programmi: descrizione dell'algoritmo, asserzioni sui dati, condizioni di ingresso e uscita delle funzioni. Generazione automatica della documentazione.

Strutturazione dei programmi: sottoprogrammi e moduli. Tipi di dato astratti.

Pile e code: definizione e implementazione mediante liste e vettori. Pile e programmi ricorsivi. Implementazione dello stack delle chiamate di funzione. Dalla ricorsione all'iterazione. Ricorsione in coda.

Ricorsione e backtracking. Uso di pile e code per il backtracking. Esempi: visita di un labirinto.

Invarianti e verifica della correttezza di un ciclo. Invarianti come strumenti di progettazione di cicli. Applicazione del metodo al problema dell'ordinamento.

Alberi binari: definizione e implementazione. Semplici proprietà degli alberi binari. Visite ricorsive di alberi binari. Generalizzazione ad alberi n-ari. Esempi di alberi binari: gli alberi binari di ricerca.

Alberi e foreste: definizione e implementazione. Rappresentazione di alberi e foreste mediante alberi binari.

Grafi: definizione e implementazione. Visite in ampiezza e in profondità. Visita in ampiezza di un albero: visita per livelli.

Testing: scelta dei dati di test. Black-box testing: analisi e suddivisione in classi dei dati di input; analisi dei casi di confine. Glass-box testing: copertura delle istruzioni e dei cammini; casi limite o rilevanti.

Materiale didattico

...

Modalità di Esame

L'esame è scritto: 3 o 4 esercizi da svolgere in un tempo che potrà variare tra le 2 e le 3 ore. A discrezione del docente, o su richiesta delo studente nel caso si voglia migliorare il voto della prova scritta, lo scritto sarà seguito da una prova orale.

Esoneri

A circa metà del corso si svolgerà un primo esonero sulla prima parte di programma sin lì affrontata. Al termine delle lezioni si svolgerà un secondo esonero sulla parte di programma affrontata nel primo esonero. Al secondo esonero potranno partecipare anche gli studenti che non hanno superato il primo esonero; questi dovranno svolgere sia la prova scritta del secondo esonero che una prova integrativa sugli argomenti del primo esonero.

  • Primo esonero: nell'orario delle esercitazioni di venerdì 21 Aprile. Data ancora non definitiva!

  • Secondo esonero: subito dopo il temrine delle lezioni.

Date degli Appelli

  • 13/06/2006 alle ore 15.00 in aula 1 NEC (scritto)
    • 15/06/2006 alle ore 10.00 in aula Seminari, Dip. Informatica, Via Salaria (orale/verbalizzazione)

  • 18/07/2006 alle ore 15.00 in aula 1 NEC (scritto)
    • 20/07/2006 alle ore 10.00 in aula Alfa, Dip. Informatica, Via Salaria (orale/verbalizzazione)

  • 19/09/2006 alle ore 15.00 in aula 1 NEC (scritto)
    • 21/09/2006 alle ore 10.00 in aula Alfa, Dip. Informatica, Via Salaria (orale/verbalizzazione)

  • 23/06/2006 alle ore 15.00 in aula 1 NEC (scritto)
    • 35/06/2006 alle ore 10.00 in aula Seminari, Dip. Informatica, Via Salaria (orale/verbalizzazione)

  • 26/02/2006 alle ore 15.00 in aula 1 NEC (scritto)
    • 28/02/2006 alle ore 10.00 in aula Seminari, Dip. Informatica, Via Salaria (orale/verbalizzazione)

Argomenti delle Lezioni

Il calendario delle lezioni, gli argomenti svolti e materiale didattico di supporto sono disponibili sulla pagina delle lezioni svolte e degli argomenti trattati.

Esercitazioni

Gli argomenti delle esercitazioni, il codice dei programmi svolti durante le esercitazioni, esercizi integrativi ed altro materiale di supporto sono disponibili sulla pagina delle esercitazioni del corso.

Anni precedenti


-- StefanoGuerrini - 24 Apr 2005


This topic: Programmazione2pz > WebHome > AnnoAcc0506
Topic revision: r37 - 2007-03-28 - StefanoGuerrini
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback