76528 - Laboratory of Computer Programming

Course Unit Page

Academic Year 2018/2019

Learning outcomes

After completing the course, the student has a basic knowledge of programming using Python language and the analysis of some fundamental problems and related algorithms solvers.

Course contents

The "Laboratory of Computer Programming" course aims providing a basic knowledge of programming. No computer prerequisites are required. A detailed description of the Python language is provided. Then, fundamental problems and some of the most important and interesting solving algorithms are analyzed.

1. Introduction

Programming languages: a bit of history. The Python programming language. What is a program? What is debugging? What is needed to program in Python?

2. Variables, expressions and statements

Values and types. Variables. Names and keywords. Operators and operands. Expressions and statements. Order of operations. String and string operations.

3. Flow control

Analysis of the most used instructions and functions for flow control. In particular, if, else, for, while, break and continue instructions.

4. Functions

Function calls. Parameters and arguments. Type conversion functions. Math functions. How to create a new function.

5. Programs

How to create a Python program. Starting from simple examples to learn the "good programming" rules, we will come up with advanced programs to solve complex problems.

Readings/Bibliography

Book: "Python Crash Course: a hands-on, project-based introduction to programming", by Eric Matthes. Publisher: No Starch Press.

Teaching methods

Classroom lessons and practice using the student's notebook. Each topic will be treated jointly with significant practical case studies to highlight its meaningful applications.

Assessment methods

This course does not have a real final exam. However, a final test (consisting of a written part and an optional oral part) will be proposed to allow the students to check the level of learning.

Teaching tools

In the website: www.filippopiccinini.it and in the teaching material section the slides shown in class are available for download as well as the software tools for practice in lab.

Office hours

See the website of Filippo Piccinini