The course introduces the student to the theoretical and practical aspects of information processing through computers, allowing the use of programming as a tool for solving real problems.
The course aims to provide students with the fundamental notions regarding the main architectures of the computer systems and the devices that compose them. Alongside a formal discussion of the coding and processing of information, the student will learn the C language, an indispensable tool for creating examples of programs that will accompany the different topics addressed, acquiring the methodologies necessary for the management of the computer memory and structures. hosted in it. We will also provide notions for debugging and testing the procedures implemented in the most common development environments, suggesting some good practices for the management of personal information technology.
The objective of the course is to introduce the student to the fundamental concepts relating to computers and their programming. The course will provide knowledge on the organization of a processing architecture, on the structure of the main application programs, and on programming in the Python language, with reference to the main types of data and programming constructs. As part of the teaching, the student will acquire the skills to create simple applications using the Python language, the ability to empirically evaluate their performance and to choose the best data structures, among those available in the language, to perform certain tasks.
In particular:
- Ability to understand the functioning of a computer and its main components.
- Ability to understand the functioning of an operating system and its main components
- Ability to develop simple applications with the Python language
The course has no particular prerequisites.
Lectures and computer-assisted exercises (possibly online)
The Computer: structure and functionality of the main components
The Operating System: structure and functionality of the main components
Programming: from algorithms to code
The Python language: variables and memory management; numerical and textual expressions; logical expressions; control structures: conditional choice, iteration, procedures and functions; predefined data structures: lists, sets, dictionaries; use of file and console I / O.
Tony Gaddis - Introduzione a Python (5a edizione) - Pearson
Lecture notes and teaching materials made available by the teacher on the course website and in class.
STEFANO DEMARCHI (President)
DANIELE MESTRINER
MAURIZIO FRANCO MAZZUCCHELLI (President Substitute)
https://corsi.unige.it/8716/p/studenti-orario
Computer base programming test.
It is not allowed to use notes or texts and PDAs. Mobile phones are not allowed
Ability to develop a Python application that reads data from a text file, reprocesses it and produces a desired output.