[[https://fel.cvut.cz/en/education/rozvrhy-ng.B212/public/html/predmety/57/20/p5720406.html|Timetable at FEE]] [[https://fel.cvut.cz/en/education/rozvrhy-ng.B212/public/html/paralelky/P57/20/par5720406.1.html|Students of PGE]] [[https://cw.felk.cvut.cz/brute/|Upload system BRUTE]] [[https://cw.fel.cvut.cz/wiki/courses/be5b33prg/start|PRG]] ===== Practices ===== ===== 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 [[https://cw.fel.cvut.cz/b182/help/common/plagiarism_cheating|plagiarism dealing rules]]. **Programming homeworks**\\ There are 8 programming homeworks in the semester. The total value of the homeworks is 32 points, the maximum value of each one homework is 4 points. To obtain the assessment it is necessary to solve successfully a number of problems which yields at least 20 points. The homeworks are assigned and the solutions are evaluated in the [[https://cw.felk.cvut.cz/brute/|upload system BRUTE]]. **Upload system** \\ Communication with the upload system is described on page [[courses:be5b33pge:uploadsystem| Upload System]].\\ Read it carefully. **Homework deadlines **\\ 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. assignment -- deadline 1. 16.2. -- 1.3. ( Arrays processing ) 2. 23.2. -- 8.3. ( Arrays processing ) 3. 2.3. -- 22.3. ( text/string processing ) 4. 9.3. -- 29.3. ( text/string processing ) 5. 23.3 -- 12.4. ( tree processing ) 6. 30.3. -- 19.4. ( tree processing ) 7. 13.4. -- 3.5. ( combined topics ) 8. 20.4. -- 10.5. ( combined topics ) Correct 10 of given 10 test cases ... 4 pts Correct 9 of given 10 test cases ... 3 pts Correct 8 of given 10 test cases ... 2 pts Correct 7 of given 10 test cases ... 1 pt Correct 6 or less of given 10 test cases ... 0 pts **Assessment**\\ * It is necessary to obtain at least 20 of maximum 32 points for solving the programming homeworks. * It is vitally important to avoid plagiarism in the homeworks, read carefully the rules of [[:help/common/plagiarism_cheating| Plagiarism]]. Consult the teacher //in advance// if there is anything unclear to you in this regard. **Consultations**\\ The preferred time for consultations is Tuesday afternoon and Wednesday not colliding with PGE lessons.\\ Other days/hours, depending on the circumstances are also possible. \\ The exact time/venue of particular consultations should be agreed upon in advance, e.g. by e-mail or personally during the lessons.\\ ====== Practices 1-14 ====== Download the examples and run them in your python environment. \\ Follow the assignments at the end of the code and calculate results or modify the code accordingly. **1. Understanding efficiency of code fragments and entire program** \\ [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#maximum_sum_of_a_contiguous_subsequence|Maximum sum of a contiguous subsequence]] \\ [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#hi-lo_game_and_1d_battleships_game_with_variants|Hi-Lo game and 1D battleships game, with variants (kind of programming warm-up)]] **2a. 1D array and list processing, Python built-in functions ** \\ [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#d_array_problems| 1D array problems, solve them all]] **2b. 2D arrays training problems ** \\ If the problems are too trivial for you, prove it by solving the last one in the problem list and show your solution to the teacher. After that you will be not obliged to solve the other problems. Otherwise, work through the problems one by one according to your capacity. [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#d_array_problems1| 2D array problems, again, solve them all.]] ---- **3. Text files processing, text search ** \\ The list of exercises is available at [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#text_files| Exercises page]].\\ **5. Effectivity of search and sort methods on various datasets ** \\ The list of exercises is available at [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#searching_sorting|Exercises page]].\\ **6 and 7. Recursive functions and procedures. Recursive generation of data/objects ** \\ The list of exercises is available at [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#recursion_i| exercises page]].\\ **8. Data processing libraries numpy, matplotlib ** \\ The exercise is available at [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#using_matplotlib_library |exercises page]] **9. Internet data resources** \\ **10. stack, queue, tree – and their implementation **\\ The list of exercises is available at [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#queue_bfs|Exercises page]] **11. Internet data resources** \\ [[https://cw.fel.cvut.cz/wiki/courses/be5b33pge/practices/code#using_csv_files |exercises page]] **12. Programming repetitions trees, recursion, exam examples ** \\ **13. //University Sports day, classes suspended// ** \\ **14. Exam examples, discussions ** \\