Lintar - Laboratorio di Intelligenza Artificiale

[ start | login ]

Laboratorio di Informatica 2007-2008

Introduzione al corso:

Scopo di questo corso è introdurre le nozioni base inerenti le architettura dei sistemi informatici e di rendere lo studente in grado di identificare algoritmi risolutivi a semplici problemi e di codificarli in linguaggio di programmazione Java. Conoscenze richieste: nessuna.

Programma:

Architettura dei sistemi informatici

  • Cenni di architettura dei calcolatori e codifica dell'informazione
  • Cenni di sistemi operativi
  • Cenni di reti di telecomunicazioni

Programmazione strutturata in Java

  • Gerarchia dei linguaggi di programmazione, compilatori e interpreti
  • La Java Virtual Machine
  • Algoritmi e programmi
  • Tipi di dati primitivi.
  • Strutture di controllo selettive e iterative
  • Array di tipi primitivi
  • Metodi, definizione ed invocazione
Testi: la bibliografia di riferimento sarà comunicata dal docente all'inizio del corso.

Modalità d'esame: scritto e orale (facoltativo per chi supera lo scritto con voto maggiore o uguale a 24).

Avvisi

  • I prossimi appelli relativi ad anni accademici precedenti al 2008/2009 verranno fissati su esplicita richiesta da parte degli studenti che devono ancora sostenere l'esame, che devono quindi prendere contatto direttamente con me via e-mail. Esclusivamente gli iscritti all'appello del 20/4/2009 possono sostenerlo lunedì 20 presso il LAB4A1, h:13:30-16:30 o mercoledì 22 presso il LAB905, h:14:30-17:30.
  • Nessuno studente ha superato il IV appello, tenutosi lunedì 14 luglio.
  • Sono stati pubblicati i >>risultati del terzo appello. L'orale/registrazione per chi lo ha superato è fissato per lunedì 23 giugno ore 9:30 presso il mio ufficio, al DISCo - ed. U14. Chi avesse problemi per tale data mi scriva un messaggio di posta elettronica.
  • Sono stati pubblicati i >>risultati del secondo appello. L'orale/registrazione per chi lo ha superato e per le persone che mi hanno contattato e che devono ancora sostenere l'orale o registrare un voto sarà giovedì 24 aprile alle ore 15 in sala riunioni presso il DISCo - ed. U14.
  • Sono stati pubblicati i >>risultati del primo appello.
  • Si avvisa che i >>risultati del secondo compitino sono stati rivisti alla luce di un errore nella correzione. I voti sono migliorati per molte persone che hanno svolto il compito D. Sono stati inoltre inseriti i voti di chi aveva avuto problemi nella consegna elettronica degli elaborati.
  • Sono stati pubblicati i >>risultati del >>secondo compitino e i voti proposti a chi abbia superato le prove in itinere. Seguite le istruzioni incuse per confermare l'eventuale accettazione del voto proposto (per chi mi ha già scritto: la registrazione del voto proposto avverrà presso data e luogo da definire, che verrà comunicato tramite i sito). L'orale per chi lo vuole o deve sostenere sarà contestuale a quello di chi supererà il primo appello, e si svolgerà presso luogo ed ora da definire.

Link a risorse online

  • >> Java Development Kit: pacchetto software contenente la Java Virtual Machine, necessaria a compilare ed eseguire programmi Java.
  • >> Jedit: ambiente per la scrittura di programmi Java con evidenziazione della sintassi ed altre funzionalità, in uso nel laboratorio.
  • >> SavitchIn: documentazione della libreria SavitchIn usabile per realizzare input da tastiera.
  • >> LintarPlot: documentazione della libreria LintarPlot usabile per visualizzare grafici.

Calendario lezioni

Si noti che le slide qui riportate non vanno intese come il solo ed unico materiale su cui studiare. A tal proposito è stato indicato un libro di testo e vengono (dove necessario) proposte delle dispense/parti di testi che trattano i temi presentati a lezione in modo organico.

data lezioneargomentoarticoli/riferimenti
lunedì 1 ottobreApertura corso, introduzione, architettura di Von Neumann>>Slide
lunedì 8 ottobreProgrammazione, diagrammi di flusso, compilatori ed interpreti, l'approccio di Java>>Slide
martedì 9 e mercoledì 10 ottobreInstallazione di Java, jEdit. Introduzione al terminale, primo programma>>Slide >>Comandi testuali
lunedì 15 ottobreEspressioni numeriche in Java>>Slide
martedì 16 e mercoledì 17 ottobreEsercitazione su espressioni numeriche in Java>>Slide
lunedì 22 ottobreEspressioni booleane e costrutti di selezione (if, if-else)>>Slide
martedi 23 e mercoledi 24 ottobreTerza esercitazione>>Documentazione classe Math>>Testo >>SavichtIn
lunedì 29 ottobreIterazione in Java>>Slide
martedì 30 e mercoledì 31 ottobreQuarta Esercitazione>>Testo
lunedì 5 novembreEsercitazione in aula di preparazione al compitino 
martedì 6 e mercoledì 7 novembreQuinta Esercitazione>>Testo>>Soluzione dei quesiti (parte 1)>>Soluzione dei quesiti (parte 2)>>Soluzione della parte pratica
lunedì 12 novembreIntroduzione ai Sistemi Operativi>>Slide
martedì 13 e mercoledì 14 novembrePrimo compitino>>Testo, >>Risultati
lunedì 19 novembreArray in Java>>Slide
martedì 20 e mercoledì 21 novembreSesta Esercitazione>>Testo
lunedì 26 novembreMetodi in Java>>Slide
martedì 27 e mercoledì 28 novembreSettima Esercitazione>>Testo >>Slide PDF
lunedì 03 dicembreStringhe in Java>>Slide
martedì 4 e mercoledì 5 dicembreOttava Esercitazione>>Testo
lunedì 10 dicembreIntroduzione alle reti di computer ed Internet>>Slide
martedì 18 e mercoledì 19 dicembreDecima Esercitazione>>Testo
martedì 8 e mercoledì 9 gennaioUndicesima Esercitazione>>Testo >>Risposteaiquesiti>>Soluzioni
lunedì 28 gennaioApprofondimento su sicurezza informatica in InternetSlide suggerite presenti sul >>sito del Prof. D'Angelo, dell'Università di Bologna.