In deze les, ga je leren dat bepaalde manieren sneller een probleem oplossen dan andere.
Op deze pagina, ga je twee algoritmes vergelijken voor het optellen van de getallen van
1 tot een bepaald invoergetal (zoals in de afbeelding hieronder).
combineer
om de lijst op te tellen.
Het blok
heeft als invoer een lijst en een operatie (met twee lege invoervakken). Het rapporteert
slecht één resultaat (dus niet een lijst): de combinatie van de elementen in de lijst nadat de
gegeven operatie is uitgevoerd. Bijvoorbeeld:
combineer
is een functie van hogere orde.
Dit betekent dat het een functie is die als invoer een functie heeft. Je hebt al een aantal
functies
van hogere orde gezien:
for each
(in Hoofdstuk 2 Les 2),
houd
(in Hoofdstuk 2 Les 3) en
map
(in Hoofdstuk 3
Les 1
). Jij kiest een operatie en combineer
voert die operatie uit door alle items in de
invoerlijst te combineren en rapporteert dan de uitkomst.
Merk op dat de functie die gebruikt wordt om de items te combineren altijd twee lege
invoervakken heeft. map
en houd
hadden maar één leeg vak in hun
invoerfunctie maar combineer
heeft er twee.
map
en houd
, wordt combineer
vooral
gebruikt samen met deze vijf functies:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | |
+ | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 |
numbers from () tot ()
in het Variabelenpalet.
som-van-1-tot
-algoritme.
Je kan Alex' methode gebruiken (met gebruik van combineer
),
je kan Bo's formule gebruiken of je kan het op je eigen manier doen.
som van 1 tot (
x)
te plotten.