Fondamenti d’Informatica 1

 
Anno accademico 2019/2020

Descrizione del corsoProgrammaTesti di riferimentoOrganizzazione e orarioMateriale didatticoEsamiValutazione del corso – Recapiti del docenteAvvisi


Descrizione del corso

Questo corso si rivolge agli studenti del primo anno dei corsi di laurea in Ing. Civile e Ing. per l’Ambiente e il Territorio, e fornisce conoscenze di base sui principi dell’organizzazione e del funzionamento dei calcolatori, sui linguaggi di programmazione di alto livello e sul linguaggio Python.

Gli studenti che supereranno l’esame:

  • conosceranno i principi elementari dell’organizzazione hardware e software dei calcolatori
  • conosceranno gli elementi di base del linguaggio Python, comuni a tutti i linguaggi di programmazione di alto livello
  • sapranno  formulare algoritmi per la risoluzione di semplici problemi di elaborazione di dati, e codificarli in programmi in linguaggio Python

Programma del corso

Architettura dei calcolatori e sistemi operativi (lezioni: 4 ore)
Cenni storici. Componenti principali della “architettura di Von Neumann”: unità di elaborazione, memoria principale, bus di sistema, dispositivi periferici; esecuzione delle istruzioni; cenni al linguaggio macchina. Funzioni e organizzazione dei sistemi operativi; componenti principali: gestore dei processi, della memoria principale, della memoria secondaria, delle periferiche; l’interfaccia utente.

Codifica binaria dell’informazione (lezioni: 5 ore; esercizi in aula: 1 ora)
Codifica analogica e numerica (“digitale”). Codifica dei numeri naturali, interi (segno e valore, complemento a due) e reali (virgola fissa, virgola mobile); cenni alla codifica di informazione non numerica (testi, immagini, filmati, suoni).

Algoritmi, linguaggi di programmazione di alto livello e ambienti di programmazione (lezioni: 8 ore; esercizi in aula: 2 ore)
Il concetto di algoritmo. Principi generali per la formulazione di algoritmi. I diagrammi di flusso come strumento per la descrizione di semplici algoritmi. Linguaggi di programmazione: linguaggio macchina, linguaggi di alto livello; ambienti di programmazione.

Il linguaggio Python (lezioni: 25 ore; esercizi in aula: 15 ore; esercitazioni di tutorato in laboratorio: 20 ore)

  • Principali tipi di dato Python: numeri interi, numeri reali, stringhe di caratteri, valori booleani. Tipi di dato strutturati: liste e dizionari. Operatori ed espressioni principali su tali tipi di dato: operatori di confronto; operatori logici and, or e not; liste e stringhe: concatenazione, indicizzazione, sezionamento (slicing), operatori in e not in; dizionari: indicizzazione e inserimento di nuovi elementi.
  • Istruzioni principali: assegnamento; condizionale (if, if-else, if-elseif-else); iterativa (while, for); le funzioni print e input; l’istruzione break.
  • Strutturazione dei programmi: le funzioni. Funzioni predefinite: la libreria standard di Python, le librerie math e random. Definizione di nuove funzioni: l’istruzione def, parametri, chiamata, argomenti; visibilità locale dei parametri e delle variabili di una funzione; restituzione di valori: l’istruzione return.
  • Accesso ai file: tipi di file; gestione dei file di testo; modalità di accesso; le funzioni open, close, read, readline, readlines, write.
  • Algoritmi di ricerca e ordinamento: ricerca binaria e sequenziale, ordinamento per selezione e per inserimento. Codifica in linguaggio Python.

Testi di riferimento

Si consigliano due testi alternativi sull’organizzazione e il funzionamento dei calcolatori, i sistemi operativi e la codifica binaria:

  • S. Ceri, D. Mandrioli, L. Sbattella, P. Cremonesi, G. Cugola, Informatica: arte e mestiere, 4a ed., 2014, McGraw-Hill (o edizioni precedenti): capitoli 1-3, 12, 13, 20
  • Donatella Sciuto, Giacomo Buonanno, Luca Mari, Introduzione ai sistemi informatici, 5a ed., 2014, McGraw-Hill (o edizioni precedenti): capitoli 1-4, 6, 7

Per il linguaggio Python si suggerisce il testo seguente: C. Horstmann, R.D. Necaise, Concetti di informatica e fondamenti di Python, Maggioli, 2014: capitoli 1-8, 12 (esclusi § 2.6, 5.9, 6.7, 7.3-7.6, 8.1, 8.3.1, 12.4, 12.5).

Tutti i testi consigliati sono disponibili in più copie presso la Biblioteca della Facoltà di Ingegneria e Architettura.


Organizzazione e orario

Il corso per l’A.A. 2019/2020 si è svolto nel primo semestre.

Il tutor del corso è disponibile a svolgere ulteriori esercitazioni nel gennaio e febbraio 2020. La prima esercitazione potrà svolgersi martedì 7 gennaio: si richiede agli studenti interessati di contattare il docente per email.


Materiale didattico

Nota bene: il materiale didattico disponibile in questa pagina non è in alcun modo sostitutivo dei testi di riferimento indicati sopra (o di altri testi equivalenti), che restano indispensabili per la comprensione di tutti gli argomenti del programma.

Lezioni

  • traccia delle lezioni (file aggiornato il 24/12/2019, con una correzione agli esercizi sui numeri primi)
  • programmi Python (file aggiornato il 24/12/2019)
  • esercitazione conclusiva svolta in aula il 20/12/2019: testo

Esercitazioni di tutoraggio

Tutti i file sono stati aggiornati il 24 dicembre.

Esempi di esercizi d’esame

Ambienti di programmazione Python

Per esercitarsi sulla programmazione in linguaggio Python si consiglia l’ambiente di programmazione IDLE, disponibile per tutti i principali sistemi operativi. IDLE può essere saricato dal sito Web www.python.it, nella sezione Download. Nel corso verrà usata la versione 3 (attualmente 3.7.4). Gli studenti degli anni accademici precedenti potranno usare la versione 2, anche negli esami.


Esami

Modalità d’esame

L’esame consisterà in una prova scritta della durata di 150 minuti, composta da domande a risposta aperta ed esercizi su tutti gli argomenti del corso, e in una prova orale. Gli esercizi riguardanti il linguaggio Python consisteranno nella scrittura di programmi.

Per raggiungere la sufficienza si dovrà dimostrare di possedere una conoscenza di base di tutti gli argomenti del corso.

In nessun appello d’esame saranno proposti esercizi identici ad altri già proposti in appelli precedenti. Tutti gli appelli presenteranno lo stesso livello di difficoltà.

Appelli d’esame

In accordo con quanto stabilito dal Consiglio di Facoltà e dal Regolamento Didattico di Ateneo, si svolgeranno sette appelli d’esame all’anno (tre nel periodo di Giugno-Luglio, tre in quello di Gennaio-Febbraio e uno in quello di Settembre), e due appelli aggiuntivi nei periodi di lezione riservati agli studenti iscritti come fuori corso. Questi ultimi si svolgeranno in date utili per gli appelli di laurea fissati nei periodi di lezione.

L’iscrizione agli appelli d’esame dovrà essere eseguita attraverso il portale Esse3 gestito dall’Ateneo, e sarà possibile a partire da dieci giorni prima della data di ciascun appello, fino alle 23:59 del secondo giorno precedente (non sarà possibile iscriversi nel giorno precedente l’appello). Chi si iscrivesse a un appello d’esame e successivamente decidesse di non presentarsi è pregato di comunicarlo appena possibile al docente.

Gli esiti di ciascun appello saranno resi disponibili su una pagina dedicata di questo sito web, e saranno annunciati nella pagina degli avvisi.

I prossimi appelli d’esame si svolgeranno nei giorni seguenti:

Regole d’esame
  • Non saranno ammessi gli studenti privi del libretto universitario e di un documento d’identità
  • Non è ammesso l’uso di appunti, libri, calcolatrici, telefoni cellulari, tablet, ecc.
  • Il compito deve essere svolto sui fogli forniti dal docente; eventuali fogli aggiuntivi saranno forniti su richiesta; tutti i fogli ricevuti dovranno essere riconsegnati al termine dell’esame
  • Durante l’esame non sarà consentito uscire dall’aula

Valutazione del corso

Sono disponibili le schede di valutazione dell’insegnamento per gli ultimi tre anni accademici:


Recapiti del docente

Per informazioni sul corso e per chiarimenti e spiegazioni sugli argomenti del programma potete contattarmi ai seguenti recapiti:

  • telefono: 070 675 5754
  • e-mail: mio-cognome chiocciola unica punto it

Il mio studio si trova al terzo piano del Dipartimento di Ingegneria Elettrica ed Elettronica (DIEE), edificio M (via Is Maglias).


Ultimo aggiornamento: 1 febbraio 2020

credits unica.it | accessibilità Università degli Studi di Cagliari
C.F.: 80019600925 - P.I.: 00443370929
note legali | privacy

Nascondi la toolbar