Computer Programming

A.Y. 2023/2024
12
Max ECTS
120
Overall hours
SSD
INF/01
Language
Italian
Learning objectives
The goal is to introduce students to structured imperative programming and small-scale problem solving
Expected learning outcomes
The student should acquire the ability to write and tune a program that automatizes a simple task; moreover, (s)he should be able to understand how a small piece of code works, to find the reasons of a malfunction and to correct it appropriately
Single course

This course can be attended as a single course.

Course syllabus and organization

Edition 1

Lesson period
First semester
Course syllabus
The syllabus is shared with the following courses:
- [F1X-56](https://www.unimi.it/en/ugov/of/af20240000f1x-56)
Laboratorio
INF/01 - INFORMATICS - University credits: 3
Laboratories: 48 hours
Shifts:
Turno A
Professor: Morpurgo Anna Chiara Giovanna
Turno B
Professor: Morpurgo Anna Chiara Giovanna
Teoria
INF/01 - INFORMATICS - University credits: 9
Lessons: 72 hours
Professor: Boldi Paolo

Edition 2

Lesson period
First semester
Course syllabus
The syllabus is shared with the following courses:
- [F3X-36](https://www.unimi.it/en/ugov/of/af20240000f3x-36)
Laboratorio
INF/01 - INFORMATICS - University credits: 3
Laboratories: 48 hours
Shifts:
Turno C
Professor: D'Amelio Alessandro
Turno D
Professor: D'Amelio Alessandro
Teoria
INF/01 - INFORMATICS - University credits: 9
Lessons: 72 hours
Professor: Vigna Sebastiano

Edition 3

Responsible
Lesson period
First semester
Course syllabus
- Programmable machines, structure of a computer, computability
- Fundamental elements of a programming language
- Structured programming and problem solving
- Effective programming techniques
- The GO programming language
(a more detailed list of topics is reported on the course syllabus)
Prerequisites for admission
There are no pre-requisites.
Teaching methods
Classroom lectures and lab sessions
Teaching Resources
I. Balbaert "The Way to Go: A Thorough Introduction to the Go Programming Language"
Assessment methods and Criteria
The exam consists of a lab test on programming skills and an individual exam on the methodological and theoretical topics.

The examination procedure is the following:
- the student registers to the call in the online system;
- the student undertakes the lab test; the score is published on the ARIEL website of the lab course as soon as the correction process is completed;
- the students with a sufficient score are contacted for the schedule of the methodological and theoretical test by the teacher via email;
- the students undertake the methodological and theoretical test by interview; the score is given directly at the end of the interview.

The exam is passed only with a sufficient score in both tests (lab and theory); in this case the final score is the arithmetic mean of the scores of the two tests, possibly rounded and corrected by either an increase or a decrease of maximum two points, according to the evaluation of the teacher.
Laboratorio
INF/01 - INFORMATICS - University credits: 3
Laboratories: 48 hours
Shifts:
Turno E
Professor: Bianchessi Nicola
Turno F
Professor: Bressan Marco
Teoria
INF/01 - INFORMATICS - University credits: 9
Lessons: 72 hours
Professor: Ceselli Alberto