- Docente: Simone Martini
- Credits: 8
- SSD: INF/01
- Language: Italian
- Moduli: Simone Martini (Modulo 1) Simone Martini (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Bologna
-
Corso:
First cycle degree programme (L) in
Mathematics (cod. 8010)
Also valid for Second cycle degree programme (LM) in Philosophical Sciences (cod. 8773)
Learning outcomes
The student will learn a programming language and will be able to design programs using simple algorithms and data structures.
Course contents
Computer science and problem solving. Abstract machines. Python
machine. Programming in Python: names and visibility, functions,
immutable and mutable objects, basic data structures (strings,
tuples, lists, dictionaries) and their use in the solution of
problems. Abstract data types: queues, stacks, binary trees. Representation of information. Structure of the Von
Neumann machine. Limitations of effective procedures: non decidable
problems.
The course
involves an important lab activity, where the instructors is joined
by a teaching assistant and other senior students in giving
assistance to students.
Readings/Bibliography
Allen B. Downey
Think Python 2e.
O'Reilly Media, 2012. ISBN 978-1449330729.
On-line manuscript: see http://www.cs.unibo.it/~martini/MATH/index.html
Teaching methods
Lectures.
Guided experimentations in computer lab.
The course involves an important lab activity, where the
instructors is joined by a teaching assistant and other senior
students in giving assistance to students.
Assessment methods
There is a single exam covering the lectures of prof. Martini and the lab. Tests in lab during lectures will be given during the semester.
Project and written examination.
The project is waived for the students in Philosophy.
Teaching tools
Computer lab.
Info and material available
at http://www.cs.unibo.it/~martini/MATH/
Links to further information
http://www.cs.unibo.it/~martini/MATH/index.html
Office hours
See the website of Simone Martini