Corso di
Anno accademico 2009-2010
(Ingegneria Elettronica)
prof. Luca Cabibbo
Benvenuti nel sito del corso di Fondamenti di informatica (Ingegneria Elettronica), tenuto da Luca Cabibbo.
Su questa pagina sono pubblicate le notizie più recenti riguardo allo svolgimento del corso di Fondamenti di informatica (ingegneria elettronica), relativamente all'anno accademico 2009-2010.
Attenzione, alcune informazioni potrebbero riferirsi ancora all'edizione 2008-2009 del corso.
(È disponibile anche un elenco completo degli avvisi.)
Gli studenti che hanno conseguito una votazione positiva all'appello di febbraio ma non hanno potuto verbalizzare nei tempi stabiliti, sono pregati di contattare il docente, per posta elettronica, appena possibile.
Avviso importante:
Questa nuova modalità d'esame entra in vigore il 1 gennaio 2010. Si applica a tutti gli studenti, sia dell'ordinamento 509 che 270. Si applica anche agli studenti che hanno frequentato il corso negli anni passati.
Sono disponibili due dispense riferite ad argomenti che non sono disponibili sul libro di testo:
Il programma definitivo del corso di Fondamenti di informatica, per l'anno accademico 2009-2010, è il seguente:
I modulo:
II modulo:
Luca Cabibbo
Fondamenti di informatica: oggetti e Java
McGraw-Hill, 2004
| Data |
Argomento |
Materiale didattico |
| 5 ottobre 2009 | Introduzione al corso |
Introduzione al
corso (aggiornata il 2 ottobre 2008) |
| Architettura dei calcolatori: calcolatori e applicazioni |
Architettura dei calcolatori Paragrafo 1.1 |
|
| 6 ottobre 2009 | Architettura dei calcolatori: architettura dei calcolatori; tecnologia dei calcolatori | Paragrafi 1.2 e 1.3 |
| 8 ottobre 2009 | Architettura dei calcolatori: il sistema operativo, calcolatori e programmazione | Paragrafi 1.4 e 1.5 |
| 9 ottobre 2009 | Oggetti software: programmi e programmazione; introduzione agli oggetti software; esempi di oggetti software; oggetti software; classi e costruzione di oggetti software (cenni) |
Oggetti software Paragrafi da 2.1 a 2.3 (fino a 2.3.3) Paragrafi 2.4 e 2.5 (cenni) |
| 12 ottobre 2009 | Oggetti software: esempi di oggetti software | Paragrafo 2.3.4 |
| Oggetti e Java: introduzione alla programmazione in Java; introduzione a Java (per esempi) | Paragrafi 3.1 e 3.2 (fino a 3.2.2) | |
| 13 ottobre 2009 | Strumenti per la programmazione |
Capitolo 4 Uso di Eclipse |
| 15 ottobre 2009 | Oggetti e Java: introduzione a Java (per esempi) | Paragrafo 3.2 (da 3.2.3 a
3.2.5) Uso di Scanner |
| 16 ottobre 2009 | Problemi, algoritmi e oggetti: problemi e algoritmi; introduzione agli algoritmi (per esempi) | Paragrafo 5.1 e Paragrafo 5.2 (fino a 5.2.4) |
| 19 ottobre 2009 | Problemi, algoritmi e oggetti: introduzione agli algoritmi (per esempi) | Paragrafo 5.2 (da 5.2.5 a 5.2.8) |
| 20 ottobre 2009 | Problemi, algoritmi e oggetti: introduzione agli algoritmi (per esempi); attraversamento di labirinti (cenni) | Paragrafo 5.2 (da 5.2.9 a 5.2.11) e Paragrafo 5.3 (cenni) |
| 22 ottobre 2009 | Le basi del linguaggio Java | Capitolo 6 |
| leggibilità | Capitolo 7 | |
| 22 ottobre 2009 (tutorato, in aula Campus) |
Tutorato: Introduzione a Java | Introduzione a Java |
| 23 ottobre 2009 | Esercizi: Come eseguire un'istruzione per N volte | |
| Uso di oggetti: tipi ed espressioni; descrizione di oggetti e classi | Capitolo 8, da 8.1 a 8.3 | |
| 26 ottobre 2009 | Uso di oggetti: creazione di oggetti e costruttori | Paragrafo 8.4 |
| Esercizi: Somma dei primi N numeri dispari | ||
| Variabili e assegnazione | Capitolo 9 | |
| 27 ottobre 2009 | Errori di programmazione | Capitolo 10 |
| Tipi ed espressioni: tipi; espressioni; tipi primitivi per numeri interi; tipi primitivi per numeri reali | Capitolo 11 (da 11.1 a 11.4) | |
| 29 ottobre 2009 | Tipi ed espressioni: conversione tra tipi; il tipo primitivo char (cenni); algebra di Boole e tipo primitivo boolean | Paragrafi 11.5, 11.6 (cenni) e 11.7 |
| Esercizi: Massimo tra dieci numeri | ||
| 30 ottobre 2009 | Istruzioni condizionali e blocco | Capitolo 13 |
| 2 novembre 2009 | Esercitazione: Introduzione a Java | Introduzione a Java |
| Esercitazione: Problemi, algoritmi e programmi Java | Problemi, algoritmi e programmi Java | |
| 3 novembre 2009 | Iterazione: accumulazione; conteggio; verifica esistenziale; verifica universale | Paragrafi 17.2, 17.3, 17.4 e 17.5 |
| Esercizi: verifica se una sequenza di numeri contiene almeno uno zero; verifica se una sequenza di numeri contiene tutti zeri | ||
| 5 novembre 2009 | Istruzioni ripetitive: while, for, do-while; confronto tra istruzioni ripetitive | Paragrafi da 14.1 a 14.4 |
| Esercizi: verifica se gli elementi di una sequenza non vuota sono tutti uguali (al primo); verifica se una sequenza non vuota è crescente | ||
| 6 novembre 2009 | Istruzioni ripetitive: confronto tra istruzioni ripetitive; linee guida; errori comuni | Paragrafi da 14.5 e 14.8 |
| Esercizi: somme, somme alterne, calcolo approssimato di pi greco | ||
| 9 novembre 2009 | Esercitazione: Analisi di sequenze | Analisi di sequenze |
| Esercitazione: Uso di oggetti | Uso di oggetti | |
| 12 novembre 2009 | Esercitazione: Iterazione: accumulazione e conteggio | Iterazione: accumulazione e conteggio |
| Esercitazione: Iterazione: verifiche | Iterazione: verifiche | |
| 13 novembre 2009 | Introduzione alla correttezza: correttezza di applicazioni | Capitolo 16 (cenni) |
| Esercizi: Calcolo della radica quadrata di un numero naturale; Verifica se una sequenza di numeri è vuota, oppure contiene tutti 7, oppure contiene almeno un 7, oppure non contiene nessun 7. | ||
| 17 novembre 2009 | Prova intermedia | |
| Data |
Argomento |
Materiale didattico |
| 3 dicembre 2009 | Definizione di metodi | Capitolo 15 |
| 4 dicembre 2009 | Esercitazione sulla definizione di metodi | Esercitazione 4/12/2009 |
| 10 dicembre 2009 | Istruzioni ripetitive annidate | Paragrafo 14.9 |
| 11 dicembre 2009 | Esercitazione: Elementi di grafica | Elementi di grafica |
| 14 dicembre 2009 | Array: introduzione agli array, uso di array | Paragrafi da 19.1 a 19.4 |
| 15 dicembre 2009 | Array: array e accesso posizionale | Paragrafo 19.5 |
| 17 dicembre 2009 | Array: ricerca sequenziale | Paragrafo 19.8 |
| Esercizi su array: numero di elementi comuni tra due array, verifica se gli elementi di un array sono tutti uguali, verifica se gli elementi di un array sono tutti distinti, inserimento di un elemento in un array in coda, elemento di un elemento in un array in una posizione data, cancellazione di un elemento da un array da una posizione data | ||
| 18 dicembre 2009 | Array: ricerca binaria | Paragrafo 19.9 |
| 18 dicembre 2009 | Esercizi su array: cancellazione da un array di tutti gli elementi uguali ad un valore dato, calcolo dell'array intersezione di due array dati | |
| 7 gennaio 2010 | Tipi riferimento e stringhe: tipi riferimento, stringhe e oggetti String, uso di variabili riferimento | Paragrafi da 12.1 a 12.3 |
| Definizione di metodi: effetti collaterali, legame dei parametri (solo legame per valore) | Paragrafi 15.10 e 15.12.1 | |
| 8 gennaio 2010 | Esercizi su array: posizione del minimo, calcolo dell'array "inverso", verifica se un array è "palindromo" | |
| 11 gennaio 2010 | Definizione di classi | Paragrafi da 18.1 a 18.5 |
| 12 gennaio 2010 | Definizione di classi | Paragrafi da 18.6 a 18.8 |
| 14 gennaio 2010 | Esercizi su array: concatenazione, estrazione, verifica se un array è "anagramma" di un altro array | |
| 15 gennaio 2010 | Modello runtime | Capitolo 21 |
| 18 gennaio 2010 | Correttezza (di metodi) | Capitolo 16 |
| Esercizi su array: inserimento ordinato | Array | |
| 19 gennaio 2010 | Array di array | Capitolo 20 |
| 21 gennaio 2010 | Ricorsione (cenni) | Capitolo 22 (cenni) |
| Definizione di classi: classi per oggetti dati | Paragrafo 18.8 | |
| Esercizi su definizione di classi: Orario | ||
| 22 gennaio 2010 | Array: fusione di sequenze ordinate | Paragrafo 19.10 |
| Esercizi su definizione di classi: Coppia | ||
| Esercizi su array di array: somma elementi diagonale principale (oppure secondaria) di una matrice quadrata, somma elementi triangolo inferiore (oppure superiore) di una matrice quadrata | ||
| 25 gennaio 2010 | Ordinamento: introduzione, ordinamento per selezione (in dettaglio), ordinamento per inserzione (cenni) | Capitolo 24 |
| 29 gennaio 2010 | Ordinamento: ordinamento a bolle (cenni), ordinamento per fusione (cenni), ordinamento veloce (cenni), confronto (cenni) | Capitolo 24 |
| Esercizi su array di array: concatenazione delle righe di un array di array | ||
| 29 gennaio 2010 (dalle 11:30 alle 13:00) |
Esercizi: su tutto il programma | |
Numero |
Argomento della prova di valutazione | Data pubblicazione | Data consegna | Soluzione |
| 1 | Introduzione a Java | martedì 20 ottobre 2009 | giovedì 29 ottobre 2009 | |
| 2 | Problemi, algoritmi e programmi Java | martedì 27 ottobre 2009 | giovedì 5 novembre 2009 | |
| 3 | Analisi di sequenze | lunedì 2 novembre 2009 | lunedì 9 novembre 2009 | |
| 4 | Uso di oggetti | lunedì 2 novembre 2009 | giovedì 12 novembre 2009 | |
| 5 | Iterazione: Accumulazione e conteggio | giovedì 5 novembre 2009 | lunedì 16 novembre 2009 | |
| 6 | Iterazione: Verifiche | giovedì 5 novembre 2009 | lunedì 16 novembre 2009 | |
| 7 | Elementi di grafica | giovedì 10 dicembre 2009 | giovedì 19 dicembre 2009 | |
| 8 | Stringhe | giovedì 4 dicembre 2008 | venerdì 12 dicembre 2008 |
|
| 9 | Array | venerdì 8 gennaio 2010 | venerdì 15 gennaio 2010 | |
| 10 | Definizione di classi | venerdì 19 dicembre 2008 | mercoledì 14 gennaio 2009 |
|
| 11 | Definizione di classi e array | giovedì 10 gennaio 2008 | martedì 22 gennaio 2008 |
|
| 12 | Array di array | mercoledì 16 gennaio 2008 | mercoledì 23 gennaio 2008 |
|
Si veda l'introduzione al corso per una descrizione dettagliata delle modalità d'esame e la collocazione degli appelli per gli studenti dell'ordinamento 270.
In particolare, si evidenzia il fatto che per partecipare all'esame è necessario prenotarsi all'esame presso il sito prenota.uniroma3.it. La prenotazione va fatta entro quattro giorni lavorativi (che corrispondono a circa una settimana effettiva) prima della data dell'appello.
Chi non riuscisse a prenotarsi presso il sito suddetto, può fare richiesta di partecipazione alle prove d'esame mediante un messaggio di posta elettronica al Prof. Cabibbo, sempre entro gli stessi termini.
Chi non riuscisse a prenotarsi presso il sito suddetto, può fare richiesta di partecipazione alle prove d'esame mediante un messaggio di posta elettronica al Prof. Cabibbo, sempre entro gli stessi termini.
Per motivi organizzativi, gli studenti non prenotati sul sito prenota.uniroma3.it che non contatteranno il docente entro 24 ore dall'esame non saranno ammessi all'esame stesso.
Si ricorda inoltre che agli esami (e alla loro verbalizzazione) lo studente deve portare il libretto universitario oppure lo statone e un documento di riconoscimento valido.
Si raccomanda inoltre la massima puntualità, sia nella prenotazione (come già osservato) che nella partecipazione alle prove d'esame.
Durante le prove d'esame non sarà consentito l’uso di alcun materiale didattico.
Testi d'esame relativi alla modalità d'esame in vigore dall'anno accademico 2005-2006 (la modalità d'esame cambierà parzialmente dall'anno accademico 2008-2009).
Altri testi d'esame di appelli conclusi, relativi alla modalità d'esame in vigore fino all'anno accademico 2004-2005, utili per esercitarsi.
Avviso importante riguardante lo svolgimento della prova pratica:
Questa nuova modalità d'esame entra in vigore il 1 gennaio 2010. Si applica a tutti gli studenti, sia dell'ordinamento 509 che 270. Si applica anche agli studenti che hanno frequentato il corso negli anni passati.
Il corso di Fondamenti di informatica per gli studenti dell'ordinamento 509, da 10 CFU, è attualmente spento (ultima edizione nell'anno accademico 2007-2008), ma è tuttora possibile sostenere esami per questo corso.
Si veda l'introduzione al corso per una descrizione dettagliata delle modalità d'esame e la collocazione degli appelli per gli studenti dell'ordinamento 509.
Dall'anno accademico 2008-2009 sarà ancora possibile sostenere l'esame di Fondamenti di informatica (509), sostenendo una prova pratica ed una prova scritta. Le due prove dovranno essere sostenute nello stesso appello.
Per sostenere l'esame di Fondamenti di informatica (509) è necessario prenotarsi presso il sito prenota.uniroma3.it, entro quattro giorni lavorativi prima dell'esame (che corrispondono a una settimana circa), selezionando il corso corretto (dettagli più precisi saranno illustrati nel seguito).
Chi non riuscisse a prenotarsi presso il sito suddetto, può fare richiesta di partecipazione alle prove d'esame mediante un messaggio di posta elettronica al Prof. Cabibbo, sempre entro gli stessi termini.
Per motivi organizzativi, gli studenti non prenotati sul sito prenota.uniroma3.it che non contatteranno il docente entro 24 ore dall'esame non saranno ammessi all'esame stesso.
Si ricorda inoltre che agli esami (e alla loro verbalizzazione) lo studente deve portare il libretto universitario oppure lo statone e un documento di riconoscimento valido.
Si raccomanda inoltre la massima puntualità, sia nella prenotazione (come già osservato) che nella partecipazione alle prove d'esame.
Durante le prove d'esame non sarà consentito l’uso di alcun materiale didattico.
Avviso importante riguardante lo svolgimento della prova pratica:
Questa nuova modalità d'esame entra in vigore il 1 gennaio 2010. Si applica a tutti gli studenti, sia dell'ordinamento 509 che 270. Si applica anche agli studenti che hanno frequentato il corso negli anni passati.
Il corso di Fondamenti di informatica II per gli studenti dell'ordinamento 509, da 5 CFU, è attualmente spento (ultima edizione nell'anno accademico 2004-2005), ma è tuttora possibile sostenere esami per questo corso.
Dall'anno accademico 2005-2006 sarà ancora possibile sostenere l'esame di Fondamenti di informatica II, con le stesse modalità della prova scritta dell'esame di Fondamenti di informatica (509).
Per sostenere l'esame di Fondamenti di informatica (509) è necessario prenotarsi presso il sito prenota.uniroma3.it, entro quattro giorni lavorativi prima dell'esame (che corrispondono a una settimana circa), selezionando il corso corretto (dettagli più precisi saranno illustrati nel seguito).
Chi non riuscisse a prenotarsi presso il sito suddetto, può fare richiesta di partecipazione alle prove d'esame mediante un messaggio di posta elettronica al Prof. Cabibbo, sempre entro gli stessi termini.
Per motivi organizzativi, gli studenti non prenotati sul sito prenota.uniroma3.it che non contatteranno il docente entro 24 ore dall'esame non saranno ammessi all'esame stesso.
Si ricorda inoltre che agli esami (e alla loro verbalizzazione) lo studente deve portare il libretto universitario oppure lo statone e un documento di riconoscimento valido.
Si raccomanda inoltre la massima puntualità, sia nella prenotazione (come già osservato) che nella partecipazione alle prove d'esame.
Durante le prove d'esame non sarà consentito l’uso di alcun materiale didattico.
Il programma definitivo del corso di Fondamenti di informatica per gli studenti dell'ordinamento 509 (10 crediti) è quello dell'anno accademico 2007-2008, come segue:
I modulo:
II modulo (è anche il programma di Fondamenti di informatica II):
Il docente del corso di Fondamenti di informatica è il prof. Luca Cabibbo. Seguite il collegamento per avere informazioni circa l'orario di ricevimento studenti (attenzione: l'orario di ricevimento studenti può cambiare da periodo didattico a periodo didattico).