CODE 66052 ACADEMIC YEAR 2020/2021 CREDITS 9 cfu anno 1 INGEGNERIA BIOMEDICA 8713 (L-8) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR INF/01 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER Annual PREREQUISITES Propedeuticità in uscita Questo insegnamento è propedeutico per gli insegnamenti: Biomedical Engineering 8713 (coorte 2020/2021) ALGORITHMS AND OBJECT ORIENTED PROGRAMMING 84377 TEACHING MATERIALS AULAWEB OVERVIEW The purpose of the course is to provide the tools to imperative programming through the introduction of high-level languages. AIMS AND CONTENT LEARNING OUTCOMES Introduction to programming languages through the construction of simple algorithms in C ++. AIMS AND LEARNING OUTCOMES In particular, the following topics will be covered: Basics about computers: data representation and arithmetic processors; Computer architecture hints and operating systems for the execution basic understanding of programs. Introduction to Programming: the high-level programming languages; state and change of state; statements and basic instructions; basic and structured types;; simple algorithms and their implementation; structured and modular programming. Programming: design of sequential size programs starting from the informal specification of the problem; compilation; code execution; basic ideas of testing. In the first part of the course (first two weeks) we will introduce MATLAB, an environment for the numerical calculation and statistical analysis. The programming parts will use a subset of the C ++ language as an example of high-level language. At the end of the course students will be able to solve simple programming problems, even with the use of external libraries, and above all they will be able to understand and modify C ++ programs that take advantage of the object-oriented programming paradigm. TEACHING METHODS Due to the COVID19 emergency, the course will be in blended modality. The course will have 2 hours per week of offline lectures provided through the Teams platform and 3 hours of practical lessons and exercises in presence. All the lectures and the practical activities will be recorded and made available also for students who cannot attend. SYLLABUS/CONTENT Basics about computers: data representation and arithmetic processors; Computer architecture hints and operating systems for the execution basic understanding of programs. Introduction to Programming: the high-level programming languages; state and change of state; statements and basic instructions; basic and structured types;; simple algorithms and their implementation; structured and modular programming. Programming: design of sequential size programs starting from the informal specification of the problem; compilation; code execution; basic ideas of testing. In the first part of the course (first two weeks) we will introduce MATLAB, an environment for the numerical calculation and statistical analysis. The programming parts will use a subset of the C ++ language as an example of high-level language. RECOMMENDED READING/BIBLIOGRAPHY Programming Principles and Practice using C++, Addison-Wesley Professional, 2008 C++. Fondamenti di programmazione -- H. M. Deitel, P. J. Deitel; Editore: Apogeo 2009 TEACHERS AND EXAM BOARD MANUELA CHESSA Exam Board MANUELA CHESSA (President) CHIARA BASSANO FABIO SOLARI (President Substitute) LESSONS LESSONS START The class will start according to the academic calendar. Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS Exam schedule Data appello Orario Luogo Degree type Note 21/01/2021 09:00 GENOVA Laboratorio 21/01/2021 14:00 GENOVA Scritto 08/02/2021 09:00 GENOVA Laboratorio 08/02/2021 14:00 GENOVA Scritto 11/06/2021 09:30 GENOVA Laboratorio 19/07/2021 09:30 GENOVA Laboratorio 14/09/2021 09:30 GENOVA Laboratorio