20810295 - Fondamenti di programmazione e Data Analytics

The aim of the course is to provide students with the methodological and conceptual tools for the design of algorithms and the implementation of programs for the automatic solution of problems.
Specific goals are the introduction of
- information technology as a discipline for the automatic solution of problems;
- tools and methodologies for the design of algorithms;
- fundamental concepts, methodologies and techniques of programming;
- concepts and methods for the use of programs for data analytics problems
At the end of the course, students will be able to tackle a programming problem in all its parts, namely:
- understand, analyze and formalize the problem
- designing a solution algorithm using iterative techniques
- implement the algorithm in a programming language using suitable data structures
and functions.
- address complex data analytics problems using appropriate libraries
scheda docente | materiale didattico

Programma

Basic concepts:
- Problems and algorithms
- Computer architecture
- languages and compilation
- I/O, variables, constants

Operations:
- Data types
- Expressions
- Boolean algebra

Control structures:
- Selection
- Iteration
- Functions

Data structures:
- Array
- Struct

Advanced topics:
- Libraries

Testi Adottati

A. Bellini, A. Guidi, "Linguaggio C. Una guida alla programmazione con elementi di Python", VI Edizione, McGraw-Hill.

Bibliografia Di Riferimento

A. Bellini, A. Guidi, "Linguaggio C. Una guida alla programmazione con elementi di Python", VI Edizione, McGraw-Hill.

Modalità Erogazione

Classroom lectures, as well as laboratory sessions.

Modalità Frequenza

Attendance is not mandatory

Modalità Valutazione

The exam consists of a written test including programming exercises, multiple choice questions, and theoretical questions regarding the course program to be carried out in the laboratory.

scheda docente | materiale didattico

Programma

Programming in Python
- Syntax
- Data structures
- Numerical computation (vectors and matrices)
- Data management (tables)
- Data Analysis

Testi Adottati

A. Bellini, A. Guidi, "Linguaggio C. Una guida alla programmazione con elementi di Python", VI Edizione, McGraw-Hill.

Bibliografia Di Riferimento

Official Python Documentation: https://docs.python.org/3/ NumPy Documentation for numerical computing: https://numpy.org/doc/ Pandas Documentation for data manipulation and analysis: https://pandas.pydata.org/docs/index.html Book: W. McKinney: "Python for Data Analysis" also available in a free online version https://wesmckinney.com/book/

Modalità Frequenza

Attendance is optional.

Modalità Valutazione

The exam consists of a written test consisting of programming exercises and theory questions regarding the course contents.