- Docente: Roberto Casadei
- Credits: 6
- SSD: ING-INF/05
- Language: Italian
- Moduli: Roberto Casadei (Modulo 1) (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Cesena
-
Corso:
First cycle degree programme (L) in
Electronics Engineering (cod. 6670)
Also valid for First cycle degree programme (L) in Biomedical Engineering (cod. 6669)
Learning outcomes
At the end of the course, the student will be acquainted with the basics of information representation, computation, algorithms, and computer programming (in particular: imperative, structured programming). The student will be able to design and implement algorithms in a programming language.
Course contents
Introduction to informatics: an overview of the field.
Basics of computer architecture: Von Neuman architecture; main components of modern computers; software levels.
Representation of information: binary code; representation of numeric information (two's complement, floating-point representation); representation of non-numeric information.
Introduction to algorithms, data structures, and programming: definition of algorithm; examples of algorithms; fundamental data structures; notations for representing algorithms (pseudo-code, flow diagrams); programming languages.
The C programming language: fundamental constructs of the language: types, values, operators, expressions, functions, control flow structures, cycles; structured programming; iteration and recursion; arrays e pointers; algorithms on arrays (reverse, ordering, search); strings of characters.
Readings/Bibliography
Suggested textbooks:
- Paul J. Deitel, Harvey M. Deitel, "Il linguaggio C: fondamenti e tecniche di programmazione", 9/Ed, Pearson, ISBN 978-8891906236 (ISBN e-book: 978-8891906243)
- Brookshear, J. Glenn. Computer science: an overview. Boston: Addison-Wesley, 2012.
For further topics on the C programming language:
- Brian W. Kernighan and Dennis M. Ritchie, "The C Programming Language, Second Edition", Prentice Hall, Inc., 1988. ISBN 0-13-110362-8 (paperback), 0-13-110370-9 (hardback).
Teaching methods
Teaching is carried out through lectures accompanied by practical exercises in the laboratory, structured according to active learning approaches. During the theoretical lessons, the basic concepts of computer science are introduced, and programming constructs are gradually described, which then become the subject of partially guided exercises under the supervision of the instructors. Solutions for all the proposed exercises is then provided on the course website, in order to support individual study activities. Some exercises are aimed at simulating the final exam.
Considering the type of activities and the teaching methods adopted, attendance of this training activity requires all students to have previously completed modules 1 and 2 of the safety training for study environments, in e-learning mode.Assessment methods
Students will be assessed based on a written/practical test in EOL (Esami Online) consisting of theoretical questions and exercises to be solved on the computer. The exam is designed to evaluate the achievement of the learning objectives; in particular, the ability to think in logical and algorithmic terms, as well as the skills in analysis, design, and implementation of programs in the C language.
Students with specific learning disorders (DSA) or temporary or permanent disabilities are advised to contact the responsible University office in advance, at the address https://site.unibo.it/studenti-con-disabilita-e-dsa/en. The office will take care of proposing any necessary adjustments, which must in any case be submitted, at least 15 days in advance, for the approval of the instructor, who will assess their appropriateness also in relation to the learning objectives of the course.
Teaching tools
The professors will provide materials to facilitate learning, including slides, lecture notes, and exercises. Laboratory classes will support practice. Tutoring will be provided to support learning throughout the coursework.
Office hours
See the website of Roberto Casadei
See the website of