COMPUTER PROGRAMMING AND LABORATORY-2
- Academic year
- 2024/2025 Syllabus of previous years
- Official course title
- COMPUTER PROGRAMMING AND LABORATORY-2
- Course code
- CT0664 (AF:521401 AR:292742)
- Modality
- On campus classes
- ECTS credits
- 6 out of 12 of COMPUTER PROGRAMMING AND LABORATORY
- Degree level
- Bachelor's Degree Programme
- Educational sector code
- INF/01
- Period
- 2nd Semester
- Course year
- 1
- Where
- VENEZIA
- Moodle
- Go to Moodle page
Contribution of the course to the overall degree programme goals
The student will learn and understand the foundations of computer science for what concerns imperative languages and basic algorithms. Moreover, the student will understand problem solvability and the ability to select suitable methods for problem analysis and modeling.
Expected learning outcomes
The student acquires:
- foundational principles of Computer Science: algorithms, languages and their classification, type systems, control structures, C++ templates, C++ containers;
- understanding of the feasibility and complexity of Computer Science problems and ability to select appropriate methods for their analysis and modeling;
Ability to apply knowledge and understanding
The student:
- knows how to use the fundamental tools for the development and adoption of simple algorithms and data structures (implemented in C++);
- develops feasibility and complexity analyses of Computer Science problems and knows how to select appropriate methods for their analysis and modeling;
- knows how to develop C++ software, perform debugging and design tests to verify the correctness of the software;
- knows how to program following the principles of imperative programming in C++ and following projects expressed through formalisms defined for their description and design.
Learning ability
- The student must be able to consult technical documentation related to the used libraries.
Pre-requirements
Contents
Pointers and References in C++.
new and delete operators for the allocation and deallocation of dynamic memory.
Parameter passing by reference.
Array in C and C++.
Strings in C and C++.
Recursion.
Lists and algorithms on lists.
Abstract data types by using classes
Queues and Stacks
templates
Iterators
Move/copy semantics
Referral texts
Assessment methods
Description of the written exam for FULL TIME and PART TIME students:
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.
The written exam contains exercises to be solved and the oral interview consists in a discussion of the written exams as well as the verification of the problem solving skills and theoretical knowledge. The oral interview will be scheduled when the written exam is sufficient. If the oral interview is insufficient, then the written exam must be retaken.
Description of laboratory exercises and final project:
The laboratory exercises 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. The final project aims to evaluate the ability to apply the skills acquired to the solution of more structured problems.
The criteria for the evaluation of the laboratory part differs according to the type of student. For FULL-TIME students it is mandatory to deliver the laboratory exercises that will be assigned during the course and the final project. The laboratory part is sufficient if at least 60% of the exercises and the final project are sufficient. The evaluation of the project contributes to the determination of the final score of the course. PART-TIME students can choose whether to take the exam in full-time student mode or replace the laboratory part with an oral exam. The project is required for all students including the part-time.
STUDENTS WITH CERTIFIED HEALTH PROBLEMS OR PARTICIPATING IN STUDENTS' EXCHANGE PROGRAMS OR STUDYING ABROAD may fulfill the requirements of the laboratory part with alternative tests which will be agreed with the teachers.
The marking of the exam follows the rules::
- project assessment 30%: The accuracy in the development of the problem according to the specifications will determine the evaluation
- oral interview 40%:the expressive skills, the theoretical knowledge, correctness in the use of technical language and the problem solving skills will determine the evaluation according to their degree of development
- written exam 30%: the correctness of the code in the various exercises will determine the evaluation