Er zijn voor mij een aantal onduidelijkheden in de volgende codes:
Probleem 1:
Als ik door de code heen lees, zie ik het volgende:
Functie F, geven we een waarde van 3 mee, if x == 0, niet van toepassing want x is 3.
return x + f ( x - 1 ), wat ik hier lees: return 3 + F(x-1) F = 3, min 1 is 2.
Dus: 3 + 2 = 5, maar de uitkomst is 6.....
Probleem 2:
Ik zie niet goed in wat het laatste stuk nu exact inhoudt en doet, waarom als je print k[0] invoert, komt er a, b ,c te staan. 0 lijkt mij namelijk steeds de beginwaarde.
Alsvolgt zie ik het nut niet van de komma achter lst:
Probleem 1:
code:
1
2
3
4
5
6
| def f(x):
if x == 0:
return 0
return x + f(x-1)
print(f(3)) |
Als ik door de code heen lees, zie ik het volgende:
Functie F, geven we een waarde van 3 mee, if x == 0, niet van toepassing want x is 3.
return x + f ( x - 1 ), wat ik hier lees: return 3 + F(x-1) F = 3, min 1 is 2.
Dus: 3 + 2 = 5, maar de uitkomst is 6.....
Probleem 2:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| dct = {}
lst = ['a','b','c','d']
for i in range(len(lst) -1):
dct[lst[i]] = ( lst[i], )
for i in sorted(dct.keys()):
k = dct[i]
print(k[0])
# What code to insert at line 8 to get as result:
#a
#b
#c |
Ik zie niet goed in wat het laatste stuk nu exact inhoudt en doet, waarom als je print k[0] invoert, komt er a, b ,c te staan. 0 lijkt mij namelijk steeds de beginwaarde.
Alsvolgt zie ik het nut niet van de komma achter lst:
code:
1
2
| for i in range(len(lst) -1): dct[lst[i]] = ( lst[i], ) |