Duration
24h Th, 20h Pr
Number of credits
Lecturer
Language(s) of instruction
French language
Organisation and examination
Teaching in the first semester, review in January
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
The aim of this course is to introduce you to algorithms and programming in the Python language.
Algorithmics: An algorithm is a sequence of precise operations to be performed in order to solve a given problem.
Programming: Programming is the process of coding an algorithm in a language that can be understood by a computer. A programming language is based on various basic elements (sequence, conditional choice, loop, etc.) and appropriate data structures. The programming language covered in this course is Python.
The topics covered will be as follows (subject to change):
- First introduction to algorithms using the Scratch graphical language.
- Basic elements of the Python language (variables, operators, conditional choices, loops, functions).
- Basic data structures in Python (strings, lists, tuples, sets, dictionaries).
- Principles of algorithmics.
Learning outcomes of the learning unit
At the end of the course, you will be able to build algorithms to solve simple problems and you will be able to program those algorithms in Python.
Prerequisite knowledge and skills
There is no prerequisite.
Planned learning activities and teaching methods
Learning will take place through:
- Weekly 2-hour theory classes given by the professor.
- Weekly 2-hour tutorials, supervised by a teaching assistant or a student instructor.
- Programming challenges.
During the tutorial sessions, you will solve Python programming exercises, either on your laptop or on a sheet of paper.
The programming challenges are also programming exercices, but they are to be carried out at home. We therefore expect you to have a personal computer.
Mode of delivery (face to face, distance learning, hybrid learning)
Face-to-face course
Further information:
The course is given during the first semester.
Course materials and recommended or required readings
Platform(s) used for course materials:
- eCampus
Further information:
The following materials cover the course material and are mandatory:
- Course notes covering the material covered in theory classes.
- Slides used in theory classes.
- Exercices to do during the tutorials and their solutions.
- Challenge statements.
These materials will be progressively made available on eCampus during the semester.
Exam(s) in session
Any session
- In-person
written exam
Continuous assessment
Out-of-session test(s)
Further information:
You will be evaluated in two ways:
1. Continuous assessment
4 programming challenges will be given as the semester progresses. Each challenge will consist in one or several Python programming exercice(s).
2. One-off assessments
- Mid-term test: A closed-book written test takes place in November. It focuses on the material covered so far (typically the various basic elements of the Python language) and mainly comprises exercises. It lasts 2 hours. Computers are not allowed.
- In session exam: This is a closed-book written exam covering all the topics covered during the semester. The exam consists mainly of exercises. Computers are not allowed.
For the first session, the following weighting is used to obtain the final grade:
- Challenges: 20%
- Mid-term test: 20%
- Exam: 60%.
Second session
In the event of failure in the first session (i.e., the weighted average of challenges, mi-term test and exam is below 10/20), you may retake the exam in the second session. In this case, the final grade will be that of the exam only (the mi-term test and challenges are no longer taken into account).
Work placement(s)
Organisational remarks and main changes to the course
All the organizational details (calendar, deadlines of the challenges, etc.) will be posted on eCampus.
Contacts
Professor : Vân Anh Huynh-Thu.
Email : vahuynh@uliege.be
Office : 1.84b, B28 (Montefiore Institute, Sart-Tilman)