29227 - FONDAMENTI DI INFORMATICA T (L-Z)

Anno Accademico 2025/2026

  • Modalità didattica: Convenzionale - Lezioni in presenza
  • Campus: Bologna
  • Corso: Laurea in Ingegneria meccanica (cod. 0927)

Conoscenze e abilità da conseguire

Lo Studente acquisisce conoscenze di base dell'architettura di un sistema di calcolo. Lo Studente si impadronisce di tecniche e metodologie per la risoluzione di diverse classi di problemi usando uno specifico linguaggio di programmazione.

Contenuti

I. Struttura di un calcolatore elettronico

Circuiti digitali elementari per le reti combinatorie, l'aritmetica e la memoria. Macchine RISC e pipelining, macchine superscalari e parallele. Gerarchia della memoria: registri, cache, memoria princiale (RAM) e secondaria (HD, CD-ROM). Indirizzi e bus. Cenni ai sistemi operativi. Partizioni di un disco rigido e file system.

 

II. Linguaggio di programmazione: il C

Funzione main, dichiarazione locale di variabili, tipi di variabile. Operatori di assegnazione, aritmetici, logici e relazionali. Blocchi di programma. Espressioni logiche o booleiane. Strutture per il controllo del flusso del programma: if-else if-else, switch, for, while e do-while. Array o matrici. Funzioni e funzioni ricorsive. Cenni alle strutture di dati, ai puntatori e alla allocazione dinamica della memoria. Funzioni e formati di input e output (I/O) in C.

Rappresentazione binaria dell'informazione: numeri interi e in virgola mobile (IEEE standard 754), tabella ASCII/UNICODE e palette dei colori RGB. Errori e loro cause: errore assoluto, relativo e percentuale. Cancellazione numerica e propagazione degli errori.

 

III. Elementi di analisi numerica

Approssimazione e rappresentazione di una funzione: rappresentazione numerica, interpolazione di tipo Lagrangiano, polinomio e serie di Taylor. Errore di troncamento.

Differenziazione di una funzione: approssimazione della derivata prima, seconda ed ennesima con le differenze finite in avanti e all'indietro, con errore di troncamento al primo e al secondo ordine; approssimazione della derivata prima, seconda ed ennesima con le differenze finite centrate. Equazione differenziale ordinaria del secondo ordine a coefficienti costanti.

Ricerca degli zeri di una funzione: risoluzione di un problema algebrico lineare con il metodo di Gauss. Soluzione di equazioni non lineari. Definizione del problema e metodo di bisezione. Metodi del punto fisso e di Newton-Raphson. Metodi della secante e Regula Falsi.

Integrazione di una funzione: metodo dei rettangoli, dei trapezi e di
Simpson. Estrapolazione di Richardson e integrazione di Romberg. Integrazione di Gauss. Errore di troncamento locale e globale e ordine della convergenza.

Testi/Bibliografia

Testo di riferimento:
Sono disponibili le dispense del docente con slides delle lezioni ed
esercitazioni. Il materiale sarà disponibile sulla piattaforma IOL
di Ateneo (https://iol.unibo.it)

Manuali di C consigliati:
Brookshear, Kochan. Fondamenti di informatica e programmazione in C. Pearson
Kelley, Pohl. C-Didattica e programmazione. Pearson
Bellini, Guidi. Linguaggio C. McGraw-Hill

Testi integrativi:
Ceri, Mandrioli, Sbattella. Informatica: arte e mestiere. McGraw-Hill
Monegato. Fondamenti di calcolo numerico. Levrotto & Bella
Epperson. Introduzione all'analisi numerica. McGraw-Hill

Metodi didattici

Lezioni frontali e esercitazioni di laboratorio informatico.

Le esercitazioni di laboratorio saranno 6 per la parte II (linguaggio C) e 6 per la parte III (analisi numerica).

Assistenza di tutor dedicato.

Materiale didattico: il materiale didattico presentato a lezione verrà messo a disposizione dello studente in formato elettronico sulla piattaforma virtuale di Ateneo. Si consiglia la stampa e l'utilizzo a lezione di tale materiale.

Username e password sono riservati a studenti iscritti all'Università di Bologna.

In considerazione della tipologia di attività e dei metodi didattici adottati, la frequenza di questa attività formativa richiede la preventiva partecipazione di tutti gli studenti ai moduli 1 e 2 di formazione sulla sicurezza nei luoghi di studio, [https://elearning-sicurezza.unibo.it/] in modalità e-learning.

Modalità di verifica e valutazione dell'apprendimento

Una prova in laboratorio informatico sul linguaggio C e una sull'analisi numerica.

Il voto viene ripartito come segue: 

1. Prova scritta al computer su argomenti di linguaggio C e di grafica. La prova si svolge in laboratorio con sistema operativo linux. Punteggio minimo da conseguire: 8, massimo: 16

2. Prova scritta al computer su argomenti di analisi numerica. La prova si svolge in laboratorio con sistema operativo linux. Punteggio minimo da conseguire: 8, massimo: 16

La somma totale dei due punteggi superiori o pari al minimo, formano il voto di esame, che pero' deve risultare >= 18. Una prova al disotto del punteggio minimo non viene considerata e deve essere ripetuta. La lode viene data se si supera il punteggio di 30.

STUDENTI LAVORATORI E STUDENTI ATLETI: per ogni sessione d'esame, gli studenti che hanno acquisito questo status possono chiedere un appello alternativo, ovvero in sostituzione di uno degli appelli ordinari della sessione. Gli studenti dovranno contattare il docente almeno 14 giorni prima del PRIMO appello previsto nella sessione, in modo da individuare una data comune tra tutte le richieste pervenute.

STUDENTI CON DSA O DISABILITA' TEMPORANEE O PERMANENTI: si raccomanda di contattare per tempo l’ufficio di Ateneo responsabile (https://site.unibo.it/studenti-con-disabilita-e-dsa/it): sarà sua cura proporre agli studenti interessati eventuali adattamenti, che dovranno comunque essere sottoposti, con un anticipo di 15 giorni, all’approvazione del docente, che ne valuterà l'opportunità anche in relazione agli obiettivi formativi dell'insegnamento.


Strumenti a supporto della didattica

PC, videoproiettore; le lezioni vengono integrate con una serie di esercitazioni pratiche con il calcolatore.

Orario di ricevimento

Consulta il sito web di Ruben Scardovelli

SDGs

Istruzione di qualità

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.