CODE 101448 ACADEMIC YEAR 2024/2025 CREDITS 7 cfu anno 1 INGEGNERIA ELETTRICA 8716 (L-9) - GENOVA 6 cfu anno 1 INGEGNERIA CHIMICA E DI PROCESSO 10375 (L-9) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05 LANGUAGE Italian (English on demand) TEACHING LOCATION GENOVA SEMESTER 2° Semester TEACHING MATERIALS AULAWEB OVERVIEW 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. AIMS AND CONTENT LEARNING OUTCOMES This teaching unit introduces students to the principles and practices of a computer’s architecture and operation. Along with theoretical aspects, the teaching also provides a focus on imperative programming with high level languages. AIMS AND LEARNING OUTCOMES 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 PREREQUISITES The course has no particular prerequisites. TEACHING METHODS Lectures and computer-assisted exercises (possibly online) SYLLABUS/CONTENT 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. RECOMMENDED READING/BIBLIOGRAPHY 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. TEACHERS AND EXAM BOARD STEFANO DEMARCHI Ricevimento: Office hours by appointment sending a mail to stefano.demarchi@edu.unige.it. Exam Board STEFANO DEMARCHI (President) DANIELE MESTRINER MAURIZIO FRANCO MAZZUCCHELLI (President Substitute) LESSONS LESSONS START https://corsi.unige.it/8716/p/studenti-orario Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION Computer base programming test. It is not allowed to use notes or texts and PDAs. Mobile phones are not allowed ASSESSMENT METHODS Ability to develop a Python application that reads data from a text file, reprocesses it and produces a desired output. Exam schedule Data appello Orario Luogo Degree type Note 08/01/2025 09:30 GENOVA Scritto 22/01/2025 09:30 GENOVA Scritto 10/02/2025 09:30 GENOVA Scritto 03/06/2025 09:30 GENOVA Scritto 19/06/2025 09:30 GENOVA Scritto 02/07/2025 09:30 GENOVA Scritto 17/07/2025 09:30 GENOVA Scritto 03/09/2025 09:30 GENOVA Scritto