# Differences

This shows you the differences between two versions of the page.

Both sides previous revision Previous revision Next revision | Previous revision | ||

programming_i_2018-19_winter_semester [2018/10/12 14:50] jakub.gemrot [Lab 01] |
programming_i_2018-19_winter_semester [2019/01/25 16:16] (current) jakub.gemrot |
||
---|---|---|---|

Line 56: | Line 56: | ||

---------------------- | ---------------------- | ||

+ | |||

+ | ======Lab Tests====== | ||

+ | * **25.1.2019**, SW2 | ||

+ | * [[https://docs.google.com/document/d/1wZR99VlUrhHQnbZnuQx_9JG4Z5sbKeXUdRzVvt4aKds/edit?usp=sharing|Add/Remove in linked lists]] | ||

+ | * **18.1.2019**, SW2 | ||

+ | * [[https://docs.google.com/document/d/1MqgaNNpdd75YyFFYWcTcYxhEdfIb1bED9AVDqNzk3TM/|Sorting in dynamic structures]] | ||

======Labs History====== | ======Labs History====== | ||

+ | |||

+ | ==== Lab 10 ==== | ||

+ | * **8.1.2019** | ||

+ | * Dynamic Trees, Binary Search Trees, definitions and implications | ||

+ | * **PRG1 - 2018 - L10 - BST** | ||

+ | * Create a program that will load integer numbers into the binary search tree dynamic structure | ||

+ | * Pretty print the result binary tree | ||

+ | | ||

+ | ==== Lab 09 ==== | ||

+ | * **19.12.2018** | ||

+ | * Recursion | ||

+ | * Fibonacci numbers, Factorial, Tower of Ha-noi, Quicksort | ||

+ | * No homework | ||

+ | |||

+ | ==== Lab 08 ==== | ||

+ | * **12.12.2018** | ||

+ | * Dynamic variables, new/dispose, linked lists | ||

+ | * Homework in the ReCodEx group (Big Numbers / Fakt dlouhá čísla) | ||

+ | |||

+ | ==== Lab 07 ==== | ||

+ | * **4.12.2018** | ||

+ | * Arrays in Pascal, user types, record, passing the data via value and reference (var) | ||

+ | * Homework in the ReCodEx group (Train and the Bridge / Po mostě má přejet vlak) | ||

+ | |||

+ | ==== Lab 06 ==== | ||

+ | * **27.11.2018** | ||

+ | * We have been talking about functions building chain of functions and reusing them, showing the result of function signature changes and how to work around it | ||

+ | * Tasks we have been working on, using only functions chr(x) and ord(x) | ||

+ | - Is this input a natural number (0 included)? | ||

+ | - Does this string contain a natural number (0 included)? | ||

+ | - Does this string a whole number? | ||

+ | * Homework | ||

+ | * **PRG2 - 2018 - L06 - Strings** - 4 programs; deliver them as functions | ||

+ | - How many digits this whole number stored in a string is containing? Return -1 if the string does not contain a whole number. | ||

+ | - What is the sum of digits in this whole number stored in a string? Return -1 if the string does not contain a whole number. | ||

+ | - You are given a string that should contain a whole number; return the number without its first digit. Return 0 if the string does not contain a whole number or the number contains only single digit. | ||

+ | - You are given a string, return the same string but convert all lower-case characters into their upper-case variants. | ||

+ | * **This exercise has been experimentally assigned to your group in ReCodEx, try to solve this by submitting your solution through ReCodEx!** | ||

+ | |||

+ | ==== Lab 05 ==== | ||

+ | * **20.11.2018** | ||

+ | * We've been going through the 22 small programs and then we will be talking about string handling, procedures and functions | ||

+ | * We touched string functions and procedures in Pascal | ||

+ | * Examples here: [[https://drive.google.com/open?id=1q5Xw8TtJ-5m0ZujVqhgViyIqhZo3q21J|stringy.pas]] | ||

+ | |||

+ | ==== Lab 04 ==== | ||

+ | * **23.10.2018** | ||

+ | * So we have presented correct lower-estimate for sorting algorithms based on comparison of two numbers, yep O(N log N) is the best we can hope for | ||

+ | * But only for a given assumptions, see [[https://cs.wikipedia.org/wiki/Counting_sort|Counting Sort]], for small range of natural numbers, you can have sort with time complexity O(N)! But it's not working in-place, what a pity. | ||

+ | * Then I've been showing Pascal language, some bits of Lazarus, and we have a homework! | ||

+ | * **PRG1 - 2018 - L04 - Small Programs** | ||

+ | * Solve the following [[https://drive.google.com/open?id=0B49ID9s3-zhTbFE2S005N3ZpdEk|22 problems (programs) with a Pascal program]] | ||

+ | * If you are an expert, try to solve them with the least number of variables possible ;) | ||

+ | * Deadline: next lab... we need to decide when that is going to be | ||

+ | * WARNING: 30.10. - immatriculation, 6.11. - Dean's day, 13.11. - I'm in Canada ;( | ||

+ | |||

+ | ==== Lab 03 ==== | ||

+ | * **16.10.2018** | ||

+ | * We talked about time complexity of algorithms, we touched Big-O notation ([[https://cs.wikipedia.org/wiki/Landauova_notace|Landau Notation]]) | ||

+ | * I've failed to show you the correct computation of the lower bound for sorting, which we will fix next week | ||

+ | * No homeworks folks! Yay! Finish the ones from previous weeks :-) | ||

==== Lab 02 ==== | ==== Lab 02 ==== |