Dettaglio insegnamento

Fondamenti di programmazione

MF0571

Insegnamento
Fondamenti di programmazione
Codice
MF0571
Anno Accademico
2023/2024
Anno regolamento
2023/2024
Corso di studio
Academic Certificate in Computer Science
Curriculum
000 - GENERICO
Responsabile didattico
Docenti
CFU
6
Ore di lezione
48
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OPZ - Opzionale
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Lingua insegnamento
Italiano
Contenuti
Il corso ha la finalità di introdurre i fondamenti della programmazione degli elaboratori elettronici, partendo dal concetto di algoritmo e dalla descrizione dei concetti di base di un programma, per arrivare a concetti avanzati di strutture controllo dei linguaggi di programmazione. Il corso si propone, inoltre, di presentare i concetti di base del linguaggio di programmazione Python impiegato a supporto dell’insegnamento della programmazione, nonché per lo svolgimento di esercitazioni pratiche in laboratorio.
Testi di riferimento
Think Python 2nd Edition by Allen B. Downey. Materiale integrativo fornito dai docenti su DIR
Obiettivi formativi
Al termine del corso, lo studente deve essere in grado di 1) dato un semplice problema di programmazione, individuarne un algoritmo risolutivo, implementarlo in linguaggio Python eseguirlo al calcolatore; 2) dato un un algoritmo o un programma implementato in linguaggio Python, individuare il problema che l’algoritmo/programma mira a risolvere.
Conoscenza e capacità di comprensione: concetto di algoritmo, concetto di programma, tipi dati fondamentali (interi, floating point, booleani, stringhe, liste), costrutti di base della programmazione (if-then-else, while, for, funzioni e parametri)
Capacità di applicare conoscenza e comprensione: dato un problema,
- individuare i dati di input da raccogliere dall'utente e i dati di output da produrre;
- individuare le strutture dati necessarie per gestire tali dati;
- definire un algoritmo che trasforma i dati di input nei dati di output, seguendo i costrutti della programmazione;
- scrivere al calcolatore il programma sorgente che implementa l'algoritmo, utilizzando un linguaggio di programmazione (Python);
- eseguire il programma
- fare test per dimostrare che il programma è corretto
Autonomia di giudizio: in modo autonomo lo studente deve riuscire ad identificare gli elementi necessari alla soluzione di un problema, definire ed implementare l'algoritmo nel linguaggio di programmazione Python ed infine eseguire il programma.
Abilità comunicative: padronanza della terminologia specifica della programmazione e abilità di comunicare a altri la propria soluzione ad un problema.
Capacità di apprendere: lo studente deve poter analizzare soluzioni di problemi implementate in Python essendo in grado di capirne il funzionamento e la logica.
Prerequisiti
Nessuno.
Metodi didattici
Lezioni tradizionali e esercitazioni nel laboratorio informatico.
Altre informazioni
Controllo dell'apprendimento in itinere: durante il corso verranno svolti molti esercizi in laboratorio volti a consolidare gli argomenti presentati durante le lezioni. Inoltre verranno somministrati quiz settimanali sugli argomenti introdotti.
Modalità di verifica dell'apprendimento
L'esame consisterà di una batteria di quiz volti a verificare le conoscenze teoriche presentare durante le lezioni e un esame orale nel quale si chiederà la scrittura di un semplice esercizio in Python. questa seconda parte è volta a testare la capacità dello studente di risolvere in maniera autonoma un semplice problema e di scrivere un programma Python.
Programma esteso
- Introduzione alla programmazione
- Individuare Input e output del problema
- Variabili e assegnamento
- Istruzioni condizionali e condizioni booleane
- Tipi elementari, Stringhe, Liste
- Dizionari, Tuple e loro realizzazione in Python
- Cicli e accenno alla complessità di un programma
- Funzioni
- Documentazione e uso di librerie
- Lettura di programmi in altri linguaggi di programmazione
Risultati di apprendimento attesi
Conoscenza delle strutture elementari della programmazione. Capacità di scrivere ed eseguire semplici programmi Python. Capacità di leggere codice Python e fare ricerche in librerie Python.
Ultimo aggiornamento:09-09-2026 00:14:31