Arvutiteaduse instituut
  1. Kursused
  2. 2018/19 sügis
  3. Programmeerimise alused II (MTAT.03.256)
EN
Logi sisse

Programmeerimise alused II 2018/19 sügis

  • Home
  • Grading
  • Links

During session 5

Exercises

NB! The practical session exercises are provided in such capacity that more experienced students would also find them interesting. It is not expected of you to get all of them done during one session. However, you are always welcome to complete the unfinished tasks at home!

1. Fractal

The following image contains examples of the fractal of order 0, 1, 2, 3 and 4. Write a recursive function, which takes two arguments: the order of the fractal and the length of a side. The function has to draw the fractal of the corresponding order. Demonstrate the work of the function drawing the fractal of order 4.

2. Cesaro fractal

Upgrade the previous program so that it draws the following fractal:

Hint: you can use a loop and the recursive function defined in previous exercise.

3. Recursive exponentiation

Write a recursive function that takes two numbers as its arguments and returns the first number raised into the power of the second number. It is not allowed to use loops, operator ** or the built-in function math.pow().

Hint: exponentiation corresponds to the repeated multiplication of the base.

4. Recursive number of elements

Write a recursive function number_of_elements that takes a recursive data structure (a nested list) and returns the number of all the elements (count all elements in all lists). It is not allowed to use the built-in function len.

Examples of the function call:

>>> number_of_elements([1, [2, 3], [[[[4, 5], 6]]], 7, 8])
8
>>> number_of_elements([[1, [2, [3, 4], 5], [6, 7, 8]], [9, 10]])
10
>>> number_of_elements([1, 2, [3, 4, 5, 6], 7, [8], 9])
9
>>> number_of_elements([1, 2, 3])
3

Sample exam exercises

Check out some examples of the test and the programming exercises:

Example test

Example programming exercise

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Tartu Ülikooli arvutiteaduse instituudi kursuste läbiviimist toetavad järgmised programmid:
euroopa sotsiaalfondi logo