Extra#

Recursie#

Leerdoel: Eerste stappen zetten in het schrijven van recursieve functies

Opdracht 1#

Schrijf de functie trap(x) die een getal accepteert en een omgekeerde # trap tekent (print). Maak gebruik van recursie en niet van lussen.

In : trap(3)
Out:
###
##
#

In: trap(5)
Out:
#####
####
###
##
#

Tip

Bedenk dat je strings kan vermenigvuldigen!

3 * "#" == "###"
# jouw oplossing

Opdracht 2#

a. Schrijf de functie lines(x, space) die twee #-lijnen tekent van x regels hoog en space geeft aan hoeveel spaties tussen de lijnen liggen.

In : lines(3, 3)
Out:
#   #
#   #
#   #

In: lines(2, 5)
Out:
#     #
#     #
# jouw oplossing

b. Schrijf een functie print_square(x) die een getal accepteert en een # vierkant van grootte x print. Maak gebruik van de functie lines.

In : print_square(3)
Out:
###
# #
###

In: print_square(5)
Out:
#####
#   #
#   #
#   #
#####
# jouw oplossing

Probeer, Plan, Programmeer!