This page is located in archive. Go to the latest version of this course pages.

Old pages

Timetable at FEE Students of PGE Upload system BRUTE Discussion board PRG

No longer valid!
This is the original subject plan, before the quarantine.
It is no longer valid.
It remains here just for archival reasons.

BE5B33PGE – Programming for Engineers


The course is concerned with the ability to implement effectively solutions of various elementary engineering applications.
– Processing numerical and text data.
– Building simple expandable applications.
– Introduction to tree and graph structures.
– Code debugging skills.
Integral part of practices are graded programming homeworks.


The student of the course is expected to be capable of simple programming in Python. The student should understand basic structures like arrays, lists, files and should be able to access and manipulate data stored in these structures.

Semester organization

Practices attendance
Attending practices is mandatory. A student who cannot attend practices for important personal/health/study reasons has to negotiate their situation with PGE teacher(s) in advance, to establish a plan of appropriate replacement learning activities. Apart from these rules, at most two (or similar low number) unexplained absences at practices are acceptable.

Individual work
All code a student turns in during the course has to be written individually by him/her. However, students are encouraged to discuss the solution ideas with other students and teachers before coding. It is the code which has to be produced strictly individually, not the idea of the solution. Plagiarism is not supported at CTU, see the plagiarism dealing rules.

Programming homeworks
There are 10 programming homeworks in the semester. The total value of the homeworks is 50 points, the value of each one homework is 5 points. To obtain the assessment it it necessary to solve successfully a number of problems which yields at least 25 points. The homeworks are assigned and the solutions are evaluated in the upload system BRUTE.

Upload system

Communication with the upload system is described on page Upload System.
Read it carefully.

  • A successful solution of a homework must produce at least 50% of correct results.
  • The deadlines of the homeworks are fixed. Solutions submitted after the deadline are not graded. Individual submission plan can be agreed upon in case of prolonged sickness, foreign trip or other important causes.
  • The Discussion board may help with discussions about the homeworks and other issues of the course.

Homework deadlines

    assignment --  deadline         
 1.   19.2.    --   4.3.
 2.   26.2.    --  11.3. 
 3.    4.3.    --  18.3.
 4.   11.3.    --  25.3.
 5.   18.3.    --   1.4.
 6.    1.4.    --  15.4.
 7.    8.4.    --  22.4.
 8.   15.4.    --  29.4.
 9.   22.4.    --   6.5.
 10.  29.4.    --  13.5.    .
Correct 10 of given 10 test cases   ...  5 pts
Correct  9 of given 10 test cases   ...  4 pts
Correct  8 of given 10 test cases   ...  3 pts
Correct  7 of given 10 test cases   ...  2 pts
Correct  6 of given 10 test cases   ...  1 pts
Correct  5 or less of given 10 test cases   ...  0 pts


  • It is necessary to obtain at least 25 of maximum 50 points for solving the programming homeworks.
  • It is vitally important to avoid plagiarism in the homeworks, read carefully the rules of Plagiarism. Consult the teacher in advance if there is anything unclear to you in this regard.


The preferred time for consultations is Tuesday afternoon and Friday afternoon.
The exact time/venue of particular consultations should be agreed upon in advance, e.g. by e-mail or personally during the lessons.


Dates and locations of examinations

Will be specified at the end of the semester.

Homeworks completed

You should complete all homeworks you had chosen to solve before you sit for the exam.

Bring in your own notebook

If you want to use a school computer instead, notify the teacher, at least one week in advance.


The exam consists of the analytical and the programming part.

At the analytical part the student is given a few snippets of python code, typically about 4-5 snippets, each having at most 30 lines. The task is to explain what the code does, what is its output. There might be some lines missing in the code and a part of the task is then to fill in those lines according to the presumed functionality of the code. No additional sources including printed and electronic may be used at the analytical part.

At the programming part the student must solve a programming problem related to the semester programming homeworks. There are 10 data input files associated with the problem and the student's code must yield a correct solution of at least 5 files. The programming part lasts 2.5 hours (150 min). Students can bring to the programming part any printed or electronic sources.

Consecutive terms
A student which fails at any part of the exam (analytical or programming) may repeat this part in any of later exam terms and does not have to repeat the remaining part. His/her results in the other part are not affected. When a student repeats some part more times only his/her best result from all terms of this part is graded. In total, each student can take part in at most three terms of the analytical part and three terms of the programing part.

Points and grading
At the exam, the total of the following is computed:

  • Points gained by solving homeworks. Acceptable minimum is 25 points.
  • Points gained by solving the programming part. Acceptable minimum is 15 of maximum 30 points. Each correctly processed input file of total 10 files is worth 3 points.
  • Points gained by solving the analytical part. Acceptable minimum is 10 of maximum 20 points. The amount of points gained is decided by the examiner.
Points total   Grade  
============   =====
      < 50       F 
 50  -  59       E 
 60  -  69       D  
 70  -  79       C 
 80  -  89       B 
 90  - 100       A
courses/be5b33pge/old_start.txt · Last modified: 2020/03/27 18:40 by berezovs