FUNDAMENTALS OF COMPUTER ENGINEERING A
cod. 18582

Academic year 2008/09
1° year of course - First semester
Professor
Academic discipline
Sistemi di elaborazione delle informazioni (ING-INF/05)
Field
Matematica, informatica e statistica
Type of training activity
Basic
63 hours
of face-to-face activities
7 credits
hub:
course unit
in - - -

Learning objectives

<span class="datirigaalto">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++.</span>

Prerequisites

<span class="datiriga">The equivalent of modules 1, 2, 3, and 7 of ECDL (European Computer Driving Licence) Syllabus</span>

Course unit content

<p> <span class="datiriga">Part A (24 hours in classroom)<br />
• Number systems. Positional notation. Base conversion. Binary arithmetic.<br />
• Internal representation of data. Two’s complement notation. ASCII. C-string representation.<br />
• File system. Operating systems.<br />
• Problem. Data. Results. Algorithm, computational method.<br />
• Searching and sorting.<br />
• Dynamic data structures: linked lists, stacks, queues, binary trees.<br />
• Top-down programming. Structured programming. Modular programming.<br />
<br />
Part B (36 hours: 12 in classroom and 24 in laboratory)<br />
• 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.</span></p>

Full programme

- - -

Bibliography

<span class="""datiriga""">
<ul>
<li>E. Clementini: <em>Fondamenti di Informatica – Programmazione strutturata in C++</em>. Carocci (2006)</li>
<li>E. Calabrese: <em>Temi d'esame di Fondamenti di Informatica con esempi di soluzione in C++</em>.  Pitagora Editrice Bologna (Nuova edizione 2005)</li>
<li><span class="""datiriga""">M. Bertozzi, E. Calabrese: <em>Lezioni di Fondamenti di Informatica A</em>.  Santa Croce (2004)</span></li>
</ul>
</span>

Teaching methods

<span class="datirigaalto">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.</span>

Assessment methods and criteria

- - -

Other information

- - -