COMPUTER SCIENCE - LABORATORY FOR COMPUTER SCIENCE
cod. 14123

Academic year 2010/11
1° year of course - Second semester
Professor responsible for the course unit
ROSSI Gianfranco
integrated course unit
9 credits
hub:
course unit
in - - -

Course unit structured in the following modules:

Learning objectives

Introduction to Computers, Networks and Computing.
To provide practise in the interaction with computers and software in a scientific environment.

Prerequisites

No

Course unit content

An introduction to Computer Science. An introduction to imperative programming. The programming language C++.

Full programme

BASIC COMPUTER SCIENCE.
Binary information representation.
The computer hardware.
The computer software.
Computer networks.

PROGRAMMING.
Problems and algorithms: basic notions, flow-charts - Programming languages. Program execution (translation vs. interpretation) - Program structure. A sample program in C++ - Constants and variables - Elementary data types in C++ - Assignment and compound statement - Basic input/output - Operators and expressions - Control structures (selection, iteration). Structured stratements in C++ - Data structures (abstract vs. concrete). Arrays in C++. Matrices. Strings. 'struct'. Tables (hints) - The 'typedef' declaration.
Subprograms: motivations. Function declaration and call in C++ - Parameter passing: by value, by reference. 'void' functions - Recursive functions - Scope rules in C++. Local vs. global declarations - File management in C++ - Pointers and dynamic memory allocation. Linked lists -
Program development. Programming environment: editor, compiler, linker (hints) - Developing simple programs using the imperative part of C++ - Using library functions.

Bibliography

Teacher's material.
L.J. Aguilar. Fondamenti di programmazione in C++ , McGraw-Hill, 2008.

R. Miller, D. Clark, B. White, e W. Knottenbel: An Introduction to the Imperative Part of C++, 1999, available athttp://www.doc.ic.ac.uk/~wjk/C++Intro/CourseStructure.html#S

Teaching methods

Oral lessons and laboratory.

Assessment methods and criteria

Written exam and practical test.

Other information

Web site: http://www.math.unipr.it/~gianfr/Teaching/Programmazione/index.html