Università di Pavia - Offerta formativa

PROGRAMMING 1

Enrollment year

2020/2021

Academic year

2020/2021

Regulations

DM270

Academic discipline

INF/01 (COMPUTER SCIENCE)

Department

DEPARTMENT OF MATHEMATICS "FELICE CASORATI"

Course

MATHEMATICS

Curriculum

PERCORSO COMUNE

Year of study

1°

Period

1st semester (01/10/2020 - 20/01/2021)

ECTS

6

Lesson hours

56 lesson hours

Language

Italian

Activity type

WRITTEN TEST

Teacher

GUALANDI STEFANO (titolare) - 6 ECTS

Prerequisites

Basic understanding of how computers work.

Learning outcomes

At the end of the course the student will be able to focus the connection between mathematics and automatic computation. The student will be taught

the python programming language, along with the fundamental idea of algorithms and data structure implementations

the python programming language, along with the fundamental idea of algorithms and data structure implementations

Course contents

Introduction to automated computing, representation of the numbers in floating points precisions, error propagations in floating point operations. Presentation of the development environment for Python:

- General purpose commands

- Variables, list, and built-ins functions

- Expressions and logical operators

- Control flow: if-then-else

- Reading and writing of CSV files

- Introduction to functional programming

- Numerical series and graphical representations

- Imperative programming vs. functional programming

- Solution of basic optimization problems (knapsack, shortest path, traveling salesman problem)

- General purpose commands

- Variables, list, and built-ins functions

- Expressions and logical operators

- Control flow: if-then-else

- Reading and writing of CSV files

- Introduction to functional programming

- Numerical series and graphical representations

- Imperative programming vs. functional programming

- Solution of basic optimization problems (knapsack, shortest path, traveling salesman problem)

Teaching methods

Lessons and laboratories with the computer

Reccomended or required readings

Lecture notes available on the web page of the course.

Recommended additional textbook:

- Introduction to Computation and Programming Using Python - With Application to Understanding Data, by John V. Guttag. MIT Press (second edition)

Recommended additional textbook:

- Introduction to Computation and Programming Using Python - With Application to Understanding Data, by John V. Guttag. MIT Press (second edition)

Assessment methods

Implementation of programs with the computer (live coding)

Further information

Sustainable development goals - Agenda 2030