INTRODUCTION TO COMPUTER PROGRAMMING

Academic year
2024/2025 Syllabus of previous years
Official course title
INTRODUCTION TO COMPUTER PROGRAMMING
Course code
CT0665 (AF:521402 AR:292746)
Modality
On campus classes
ECTS credits
6
Degree level
Bachelor's Degree Programme
Educational sector code
ING-INF/05
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 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
- Iterative Computation and Recursive Computation
- Dynamic Memory
- Abstract Data Types
- Problem solving strategies
Paul J. Deitel, Harvey M. Deitel. Il linguaggio C. Fondamenti e tecniche di programmazione. 8/Ed. Pearson. 2016.
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.
English
written and oral
Definitive programme.
Last update of the programme: 19/04/2024