Code: | L.EIC003 | Acronym: | FP |
Keywords | |
---|---|
Classification | Keyword |
OFICIAL | Informatics Engineering and Computing |
Active? | Yes |
Web Page: | https://moodle.up.pt |
Responsible unit: | Department of Informatics Engineering |
Course/CS Responsible: | Bachelor in Informatics and Computing Engineering |
Acronym | No. of Students | Study Plan | Curricular Years | Credits UCN | Credits ECTS | Contact hours | Total Time |
---|---|---|---|---|---|---|---|
L.EIC | 420 | Syllabus | 1 | - | 6 | 52 | 162 |
BACKGROUND
Fluency in the process of software development is an essential prerequisite to the work of Informatics Engineers. To use computers to solve problems effectively, students must be competent at reading and writing programs using high-level programming languages.
SPECIFIC AIMS
The global aim of this Unit is to give the student the ability to create algorithms and use a programming language to implement, test, and debug algorithms for solving simple problems.
The student will understand and use the fundamental programming constructs, and the functional approach to programming, specifically effect-free programming where function calls have no side-effects and variables are immutable, and contrast it with the Imperative approach.
PERCENT DISTRIBUTION
Scientific component: 40%
Technological component: 60%
At the end of the course, the student is expected to handle programming problems of medium complexity, using the imperative or functional programming approaches or paradigms.
More specifically, the student will be able to:
Topics:
The continuous enrolment of the student in the course is promoted through the study and discussion of the course topics, previously distributed in Jupyter Notebooks and videos, that will later be used in lectures.
The student is motivated to find the best ideas to solve specific problems, execute them and implement the programming solutions, in an elegant, legible and efficient (time and space) mode using the Python programming language.
Lecture classes are used to discuss the topics of the program and present related programming case-studies. Recitation classes are used to help students understand the program's topics and solve the weekly programming assignments.
In-class and homework programming assignments are given on a weekly basis to improve the regular and effective development of autonomous learning processes and are tested and graded using Moodle assignments. Automatic correction tools are used to increase the efficiency of the feedback given to the students.
Students are encouraged to use the Playground, containing programming exercises selected by theme: "easy" to solve before the lecture, "medium" to solve before the weekly assignments, and "hard" to solve before the practical tests in a computer (minitests).
Whenever deemed necessary in the classroom, especially during the first month of classes, students are encouraged to go to the "Clinic", supervised by student assistants, to get help.
Designation | Weight (%) |
---|---|
Teste | 90,00 |
Trabalho prático ou de projeto | 10,00 |
Total: | 100,00 |
Designation | Time (hours) |
---|---|
Estudo autónomo | 110,00 |
Frequência das aulas | 52,00 |
Total: | 162,00 |
To obtain eligibility for exams, students must not exceed the absence limit, established in the rules (25% of the total number of estimated practical lessons).
Assessment includes two components: (i) Continuous assessment (AC) — weekly assessment, in-class and outside of class, based on Moodle activities; and (ii) supervised Computer-based mini-tests (MT1, MT2, EN, ER) — in the classroom, to be carried out in Moodle and divided into theoretical multiple-answer questions and computer programming exercises.
The final grade for the Ordinary examination period ("Época normal") is given by the following formula:
if EN>=40%: Final grade = 10% AC + 90% (MT1+MT2+EN)/3
if EN<40%: Final grade = 10% AC + 90% EN
The final grade for the Supplementary examination period ("Época de Recurso") is given by the following formula:
Final grade = 10% AC + 90% ER
Assessment components:
AC: Continuous assessment: multiple-answer questions and computer-based weekly programming exercises.
MT1, MT2: Computer-based exams, with 2 components, theoretical and practical, to be taken during the semester.
EN: Computer-based exams, with 2 components, theoretical and practical, to be taken at the Ordinary examination period ("Época Normal").
ER: Computer-based exam, with 2 components, theoretical and practical, to be taken at the Supplementary examination period ("Época de Recurso"), for:
The evaluation of this course uses two types of examinations:
Students with a special status, although they may be exempted from attending practical lessons, are subject to the same assessment conditions as regular students.
Students who want to improve their grade from the previous academic year, will have to undergo the entire evaluation process; they only waive the requirement of assiduity to practical classes.
The partial classifications obtained in this edition cannot be used in other registrations in the Curricular Unit.