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
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
- 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
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 mandatoryModalità 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
- Syntax
- Data structures
- Numerical computation (vectors and matrices)
- Data management (tables)
- Data Analysis
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.