Home Freccia destra Ingegneria Biomedica L-9 Freccia destra Fondamenti di informatica

Ingegneria Biomedica L-9

Fondamenti di informatica

Settore scientifico disciplinare Numero crediti formativi (CFU) Docente
ING-INF/05 (IINF-05/A) 9 Ala Arman

Risultati di apprendimento attesi

·        Conoscenza e comprensione dei paradigmi della programmazione iterativa e ricorsiva

·        Conoscenza e comprensione dei metodi per la programmazione procedurale e a oggetti

·        Conoscenza e comprensione delle strutture fondamentali per la rappresentazione dei dati e per i modelli relazionali.

Modalità di accertamento dei risultati di apprendimento acquisiti dallo studente

1. Discussioni svolte durante le lezioni interattive, utili a verificare la capacità degli studenti di argomentare, confrontarsi e applicare i concetti affrontati.

2. Valutazione dei risultati dell’esame finale, che misura il raggiungimento complessivo dei risultati di apprendimento attesi, sia in termini di conoscenza teorica che di 

capacità applicative.

Modalità di esame

Propedeuticità

Nessuna propedeuticità obbligatoria.

Prerequisiti

- Conoscenze di base di matematica delle scuole superiori (algebra elementare, logica, calcolo numerico semplice).

- Familiarità con l’uso del computer e dei principali strumenti informatici (file, cartelle, applicazioni).

- Capacità di comprendere testi tecnici e seguire procedure passo-passo.

- Non è richiesta alcuna conoscenza pregressa di programmazione.



Organizzazione didattica

  • 45 lezioni frontali videoregistrate, della durata di circa 30 minuti ciascuna (tenuta in considerazione la necessità di riascolto) sempre disponibili in piattaforma.
  • 9 ore di lezioni online interattive in diretta
  • Per gli studenti che sostengono l’esame dopo il 13 febbraio 2026, la prova comprende anche un progetto di programmazione (2 CFU), sviluppato nell’ambito delle attività di laboratorio e descritto nella sezione Home del corso → Elaborati.

Ricevimento studenti

In merito all’appuntamento, può contattarmi tramite il seguente indirizzo email: ala.arman@uniroma5.it

Obiettivi Formativi

L’insegnamento si propone di far acquisire agli studenti le conoscenze sulle nozioni di base dell’informatica ed in particolare i principi, le tecniche e gli strumenti fondamentali relativi al trattamento automatico dell’informazione. Più specificatamente, l’insegnamento si propone di fornire conoscenze e capacità di comprensione in tre ambiti importanti dell’informatica di base:

a) architettura dei calcolatori elettronici;

b) rappresentazione digitale dell’informazione;

c) risoluzione di problemi mediante un approccio algoritmico.

Risultati di apprendimento attesi

  • Conoscenza e comprensione dei paradigmi della programmazione iterativa e ricorsiva
  • Conoscenza e comprensione dei metodi per la programmazione procedurale e a oggetti
  • Conoscenza e comprensione delle strutture fondamentali per la rappresentazione dei dati e per i modelli relazionali.

Programma del Corso

  • Fondamenti dell’informatica: architettura dei calcolatori, sistemi operativi, rappresentazione digitale dell’informazione e principi del trattamento automatico dei dati.
  • Programmazione in Python: variabili, tipi di dato, strutture di controllo, funzioni, ricorsione, gestione della memoria e programmazione a oggetti.
  • Strutture dati: liste, tuple, insiemi, dizionari, matrici, alberi, grafi e relativi algoritmi di visita e manipolazione.
  • Attività di laboratorio finalizzata ad offrire agli studenti la possibilità di comprendere e mettere in pratica lo sviluppo di programmi funzionanti.

Testi consigliati

Il docente consiglia l’integrazione del materiale fornito (videolezioni, slides, esercitazioni) con i seguenti testi, a cui il docente può fare riferimento durante le lezioni:

  • C. Horstmann, R. D. Necaise, Concetti di Informatica e fondamenti di Python. (Maggioli Editore)
  • M.G. Schneider, J.L. Gersting, Informatica, Algoritmi, architetture, linguaggi, applicazioni (Maggioli Editore)

Lezioni

Rappresentazione e codifica delle informazioni

Rappresentazione Digitale Binaria

Sistemi di numerazione posizionale

Codifica binaria di numeri decimali

Operazioni aritmetiche tra numeri binari

Codifica ottale

Codifica esadecimale

Codifica del testo

Codifica del suono

Codifica di immagini e video

Rappresentazione in segno e modulo

Rappresentazione in complementi a uno

Rappresentazione in complementi a due

Rappresentazione per eccesso

Rappresentazione dei numeri reali

Rappresentazione in virgola mobile

Concetti introduttivi

Assiomi e propriet

Operatori logici e operatori booleani

Funzioni ed Espressioni booleane

Caratteristiche e componenti fondamentali

Ciclo del processore

Tipologie di memorie

Trasferimento dati

Evoluzioni del modello di Von Neumann

Problemi, algoritmi, ed esecutori

Automi a stati finiti

La descrizione degli algoritmi

Diagrammi di flusso

Diagrammi di flusso: i Blocchi di iterazione

Esercizi di riepilogo

Linguaggi di Programmazione

La progettazione dei programmi

Struttura dei programmi in C

Tipi di dati e operatori

Strutture di controllo in C: sequenza e selezione

Strutture di controllo in C: selezione multipla

SQL come Data Definition Language

SQL per la definizione di valori null e vincoli

SQL per la creazione di oggetti nel DB

SQL come Data Manipulation Language

Le query SQL e le clausole fondamentali

Il Join tra tabelle