INTRODUCTION TO PROGRAMMING-1

Academic year
2018/2019 Syllabus of previous years
Official course title
INTRODUZIONE ALLA PROGRAMMAZIONE-1
Course code
CT0441 (AF:297187 AR:163586)
Modality
On campus classes
ECTS credits
6
Degree level
Bachelor's Degree Programme
Educational sector code
INF/01
Period
1st Semester
Course year
1
Where
VENEZIA
Moodle
Go to Moodle page
The course aims to introduce the basic elements of functional and imperative programming.
At the end of the course the student must be able to realize algorithmic solutions to solve problems of limited complexity.
The course will provide students with knowledge and understanding of the fundamental principles of computer science, in relation to functional and imperative languages.
At the end of the course the student must be able to use a professional programming environment, to edit, compile and run programs on Unix-like and Windows platforms. In particular, he/she must know how to:
1. formalize a problem of limited complexity (providing the specification);
2. design one or more solutions to it (developing corresponding algorithms);
3. implement these solutions using functional or imperative programming languages;
4. verify the execution of the proposed programs with appropriate test cases.
No prerequisite is required.
Functional programming:
- Expressions and values
- Types
- Functions and parameter passing
- Problem solving: decomposition of problems, top-down and bottom-up solution methodologies.
- Recursion and induction
- Iteration and invariants
- Lists

Imperative programming:
- Variables
- Types
- Assignment
- Iteration and invariants
- Problem solving: decomposition of problems, top-down and bottom-up solution methodologies
- iterative structures
- M. Hailperin, B. Kaiser, K. Knight : Concrete Abstractions, Brooks/Cole Publishing Company, 1999 http://gustavus.edu/+max/concrete-abstractions-pdfs/index.html
- Materials supplied by the teacher.
FULL-TIME STUDENTS:
In order to pass the exam, it is mandatory to submit the weekly assignments and the final project and obtain a sufficient evaluation. The thresholds are 60% of sufficient assignments and a sufficient evaluation for the project.
Particularly good projects will be evaluated positively in the exam markings.

The theoretical part can be passed in two ways:
1) Two classwork given during the course
2) A final written exam
The written exams will test both the theoretical knowledge of the students and their skill on problem solving.

In order to pass the exam the student must have a positive evaluation in both the parts. It is important to understand that a negative evaluation for the laboratory part requires the students to newly try it the year after.

PART-TIME STUDENTS:
Part-time students can choose to pass the exam in the same way of full-time students or to replace the laboratory assignments with an oral interview.

STUDENTS WITH HEALTH PROBLEMS OR THAT ARE STAYING OVERSEA
In these cases the students are invited to contact the teachers for finding a modality of exam that can partially or totally replace the laboratory assignments.
Lessons in class and laboratory assignments.
Written
Definitive programme.