Computer science 
Code

119207 
Language

ITA 
Type of certificate

Profit certificate

Module: MODULE I
(objectives)
The objective of this module is to show to the students the fundamental aspects of computer science, aiming at introducing them to coding and paying particular attention to the development of their logical and problemsolving skills. In the first part, thus, the bases of Boolean algebra (from its definition to logical operations) will be presented, followed by notions of logical functions and circuits. In the second part, instead, Matlab® software will be used to teach to the students the bases of coding, so as to make them capable to solve algorithmically some mathematical problems. The main tools for image digital visualization and processing offered by Matlab® will be also introduced.
At the end of the course, students:  will know the fundamental aspects of computer science;  will be capable to solve mathematical problems using algorithms developed in Matlab®;  will know the bases of image representation and processing.
The expected knowledge objectives are: 1) the theoretical knowledge of the contents of the course (Dublin descriptor n°1); 2) the competence in presenting technical topics (Dublin descriptor n°2); 3) the autonomy of judgment in proposing the most appropriate approach to solve a problem (Dublin descriptor n°3); 4) the ability to express the answers to the questions proposed by the board of examiners with language properties, to support a dialectical relationship during discussion and to demonstrate logicaldeductive and summary abilities in the exposition (Dublin descriptor n°4).

Language

ITA 
Type of certificate

Profit certificate

Credits

6

Scientific Disciplinary Sector Code

INF/01

Contact Hours

48

Type of Activity

Basic compulsory activities

Teacher

GIOVANNOZZI EDMONDO
(syllabus)
The course consists on a broad introduction on computer science and on a computer language: Python. In the introductory part we start from binary numbers and boolean algebra to get to the basic working of a modern computer. Then we will introduce computer languages and then we get to Python. After a general introduction on the language we will focus on the scientific modules that is numpy and scipy. Then the similarities and the differences between Matlab® and these Python libraries will be illustrated.
(reference books)
 Lecture notes  Online information on Python and Matlab: http://www.python.org , https://it.mathworks.com/products/matlab.html  Python: "Guida alla sintassi, alle funzionalità avanzate e all'analisi dei dati", Naomi Ceder

Dates of beginning and end of teaching activities

From 20/09/2021 to 22/12/2021 
Delivery mode

Traditional

Attendance

not mandatory

Evaluation methods

Written test
Oral exam
A project evaluation



Module: MODULE II
(objectives)
The objective of this module is to show to the students the fundamental aspects of computer science, aiming at introducing them to coding and paying particular attention to the development of their logical and problemsolving skills. In the first part, thus, the bases of Boolean algebra (from its definition to logical operations) will be presented, followed by notions of logical functions and circuits. In the second part, instead, Matlab® software will be used to teach to the students the bases of coding, so as to make them capable to solve algorithmically some mathematical problems. The main tools for image digital visualization and processing offered by Matlab® will be also introduced.
At the end of the course, students:  will know the fundamental aspects of computer science;  will be capable to solve mathematical problems using algorithms developed in Matlab®;  will know the bases of image representation and processing.
The expected knowledge objectives are: 1) the theoretical knowledge of the contents of the course (Dublin descriptor n°1); 2) the competence in presenting technical topics (Dublin descriptor n°2); 3) the autonomy of judgment in proposing the most appropriate approach to solve a problem (Dublin descriptor n°3); 4) the ability to express the answers to the questions proposed by the board of examiners with language properties, to support a dialectical relationship during discussion and to demonstrate logicaldeductive and summary abilities in the exposition (Dublin descriptor n°4).

Language

ITA 
Type of certificate

Profit certificate

Credits

3

Scientific Disciplinary Sector Code

INGINF/05

Contact Hours

24

Type of Activity

Basic compulsory activities

Teacher

Zingoni Andrea
(syllabus)
 Introduction to computer science and boolean algebra.  Logical operations and functions, thruth tables, Karnaugh maps.  Combinatory and sequential logical circuits; sketch of the passage from physical signals to operative systems.  Introduction to Matlab/Octave.  Matlab/Octave functions and their representation.  Iterations and alternatives in Matlab/Octave.  Digital image representation and processing (with practical examples in Matlab/Octave).  Problem solving examples in Matlab/Octave.
(reference books)
 "Reti logiche", di C. Bolchini, C. Bandolese, F. Salice, D. Sciuto, ed. Apogeo 2008 (in particolare Cap. 1; 2; 3.13.5, 4.14.4, 5, 7.17.2).  "An Introduction to Boolean Algebras", di A. Schardijn (2016), Electronic Theses, Projects, and Dissertations, 421, California State University.  "MATLAB: A Practical Introduction to Programming and Problem Solving", di S. Attaway (2018), ed. Elsevier  ButterworthHeinmann.  Dispense del Professore (contattare via email per riceverle).

Dates of beginning and end of teaching activities

From 20/09/2021 to 22/12/2021 
Delivery mode

Traditional
At a distance

Attendance

not mandatory

Evaluation methods

Oral exam



