Learning objectives
The goal of the course is to provide students with the ability to understand the principles of informatics and programming.
Prerequisites
No prerequisites.
Course unit content
1. Introduction to informatics:
1.1. Programs and algorithms
1.2. Boolean algebra and logic
1.3. Data representations
1.4. Computer architecture
1.5. Operating systems
2. Python programming language:
2.1. Structured programming
2.2. Data structures and collections
2.3. Functions
2.4. Reading and writing files
Full programme
1. Introduction to informatics
1.1. Programs and algorithms
1.2. Boolean algebra and logic
1.3. Data representation and encoding
1.4. Computer architecture
1.5. Flowcharts
1.6. Finite state machines
1.7. Operating systems and command line
2. Programming in the Python language:
2.1. Data types
2.2. Basic operations (arithmetic, comparison, Boolean, strings)
2.3. Variables
2.4. Predefined functions and methods
2.5. User Input/Output
2.6. Graphics
2.7. Lists, tuples
2.8. Structured programming (if, while, for)
2.9. Functions and recursion
2.10. Reading and writing files
2.11. Sets, dictionaries
2.12. Tabular data processing
2.13. Introduction to classes and objects
Bibliography
M. Tomaiuolo, A. Ferrari - Introduzione all'Informatica con Python - McGraw-Hill, 2024
Teaching methods
Classroom lectures involving the presentation of slides and the guided resolution of programming exercises.
Assessment methods and criteria
Written examination with numeric or multiple-choice questions and the development of one or more short Python programs.
Other information
2030 agenda goals for sustainable development