INTRODUCTION TO PROGRAMMING-1

Academic year
2020/2021 Syllabus of previous years
Official course title
INTRODUZIONE ALLA PROGRAMMAZIONE-1
Course code
CT0441 (AF:336074 AR:176685)
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 at introducing the basic elements of imperative programming to devise algorithmic solutions to simple problems.

The student will learn and understand the foundations of computer science for what concerns imperative languages and basic algorithms. Moreover, learn how to use a programming language
to provide a sound and formal description of a designed problem solution.
At the end of the course the student must be able to use a professional programming environment, to edit, debug, compile and run programs on Unix-like and Windows platforms. In particular, he/she must know how to:
- formalize a problem of limited complexity (providing the specification);
- designing one or more solutions to it (developing corresponding algorithms);
- implement these solutions using imperative programming languages;
- verify the execution of the proposed programs with appropriate test cases.
No prerequisite is required.
- Introduction to the C programming language
- Variable and fundamental data types
- Flow of Control
- Functions
- Array, pointers and strings
- Recursion
- Dynamic memory
- Problem solving strategies
- A. Kelley, I. Pohl. C didattica e programmazione. Ed. Pearson-Addison Wesley, 2004.
- B. Kernighan, D. Ritchie. Il Linguaggio C, Ed. Pearson-Prentice Hall, 2004.

- Optional: Deitel & Deitel, C How to Program, 8th Edition, Pearson
The exam consists of a written test, in the the weekly assignments and in a final project. Students must gain a positive grade in all the three evaluation phases.

Description of assignments:
The assignments aim to develop the student's problem solving skills, the knowledge of the C language and the ability to code the solution algorithm devised in the programming language.
Assignments must be delivered on a weekly basis. Students are allowed to ask for the replacement of the weekly assignments with an additional written evaluation. This option might be of greater interest for part-time students.

Description of the written exam:
The written test aims to evaluate the student's problem solving skills, the knowledge of the C language and the ability to code the algorithm devised as solution. This part of the exam can be taken in two ways:
With a single written exam on the scheduled dates.
With two intermediate exams, one during the course and the second one at the same time of the first exam call.

Description of the final project:

The final project aims to evaluate the ability to apply the skills acquired to the solution of more structured problems.
The final project is evaluated through an oral discussion and it contributes to the final grade.

STUDENTS WITH CERTIFIED HEALTH PROBLEMS OR PARTICIPATING IN STUDENTS' EXCHANGE PROGRAMS OR STUDYING ABROAD may fulfill the requirements of the assignments with alternative tests which will be agreed with the teachers.
Lectures and hands-on sessions.
The frequent interleaving of exercises allows students to immediately apply abstract knowledge to practical problems and to self-evaluate their skills.
Italian
written and oral
Definitive programme.
Last update of the programme: 16/06/2020