09730 - Principles of Informatics

Academic Year 2021/2022

  • Docente: Mirko Ravaioli
  • Credits: 6
  • SSD: ING-INF/05
  • Language: Italian
  • Teaching Mode: Traditional lectures
  • Campus: Forli
  • Corso: First cycle degree programme (L) in Mechanical Engineering (cod. 0949)

    Also valid for First cycle degree programme (L) in Aerospace Engineering (cod. 9234)

Learning outcomes

At the end of the course the student possesses the fundamental notions regarding digital machines and the architecture of computers and their use in information processing. In addition, he possesses the knowledge useful for the design of algorithms and the tools necessary for their implementation using a high-level language to solve simple engineering problems.

Course contents

Basic computer architecture: Von Neuman architecture; structure of a CPU.

Information representation: representation of numerical information (two's complement representation, floating-point representation); representation of non-numerical information.

Boolean logic: Boolean algebra. Boolean expressions and functions. Logic gates and circuit diagrams.

Introduction to algorithms and data structures: definition of algorithm and examples; fundamental data structures.

The MATLAB / Octave language: Fundamental constructs. Data structures. Operations on vectors and matrices. Vector programming elements. Input and Output. Functions. Visibility of variables. Use of graphic functions.

Readings/Bibliography

J. Glenn Brookshear, Dennis Brylow “Informatica—una panoramica generale”, 12/ed., Pearson 2016

G. Michael Schneider, Judith L. Gersting "Informatica " Edizione italiana a cura di Antonio Gentile e Roberto Pirrone - Maggioli, 2013

Testo sulla programmazione in MATLAB:

S. Attaway. MATLAB - A Practical Introduction to Programming and Problem Solving. 5th Edition, Elsevier 2019

Teaching methods

Lessons in which the various topics will be introduced and exercises in which each topic will be accompanied by examples, case studies and exercises.

Assessment methods

Students will be assessed considering 2 basic tests:
- autonomously developing software projects in Matlab at home
- composed of exercises and theoretical questions

An oral exam will eventually be available.

The exam is structured in such a way as to evaluate the achievement of the didactic objectives; in particular, the ability to reason in logical and algorithmic terms and the skills of analysis and synthesis of programs in MATLAB / Octav language

Teaching tools

 The course will also use didactic material provided by the teacher (in particular, slides and handouts with various exercises and problems).

Office hours

See the website of Mirko Ravaioli