FUNDAMENTALS OF COMPUTER ENGINEERING A
Learning outcomes of the course unit
Introduction to informatics and to the basic tools necessary to using and programming a computer. Particular attention is given to algorithms, computer languages, and programming methodologies. The language used in this course is C++.
The equivalent of modules 1, 2, 3, and 7 of ECDL (European Computer Driving Licence) Syllabus
Course contents summary
Part A (24 hours in classroom)
• Number systems. Positional notation. Base conversion. Binary arithmetic.
• Internal representation of data. Two’s complement notation. ASCII. C-string representation.
• File system. Operating systems.
• Problem. Data. Results. Algorithm, computational method.
• Searching and sorting.
• Dynamic data structures: linked lists, stacks, queues, binary trees.
• Top-down programming. Structured programming. Modular programming.
Part B (36 hours: 12 in classroom and 24 in laboratory)
• The C++ language: Program structure. Elementary data types. Constants, variables, operators, expressions. Assignment. Control structures. Arrays. Strings. Functions. Function prototypes. Parameters. Scope rules. Activation records and the stack. Function overloading. Recursion. enum, struct. Input/output. File processing. Editing and debugging a program. Multi-file projects. Pointers. Dynamic memory allocation. Linked lists and binary trees handling. Libraries.
- E. Clementini: Fondamenti di Informatica – Programmazione strutturata in C++. Carocci (2206)
- M. Bertozzi, E. Calabrese: Lezioni di Fondamenti di Informatica A. Santa Croce (2004)
- E. Calabrese: Temi d'esame di Fondamenti di Informatica con esempi di soluzione in C++. Pitagora Editrice Bologna (Nuova edizione 2005)
A quiz and a programming test. Occasionally, oral exams are also required.Computer laboratory activities focus on familiarizing with the programming environment and solving problems of increasing complexity using the C++ language.