Transformeren van alle items in een lijst

Op deze pagina gebruik je ADT's met het map-blok om alle namen in je contactenlijst weer te geven.

Zoals je weet stelt het houd-blok je in staat alle items door te nemen met gebruik van een predicaat, en het geeft alleen de items door die het predicaat waar maken. Het Geen Afbeelding-blok stelt je ook in staat om in een keer door een hele lijst te werken. map zorgt ervoor dat je dezelfde functie uit kan voeren op ieder item in een lijst. map ontvangt twee invoeren: een functie (een rapporteur met een leeg invoer vak) en een lijst, en het rapporteert een nieuwe lijst. Elk item in deze nieuwe lijst is het resultaat van het oproepen van de functie met een item van de invoerlijst. Bijvoorbeeld:
Geen Afbeelding
Geen Afbeelding

Je schrijft zelf de functie die de items aanpast en map past die functie toe op elk item in de invoerlijst en rapporteert daarna de lijst met resultaten.

Zie je dat de invoerfunctie voor map altijd een leeg invoervak heeft? Bij het houd-blok was dat ook zo. Dit lege invoervak is waar een item uit de lijst wordt neergezet, wanneer de functie wordt uitgevoerd.

  1. Als het niet al openstaat, open dan je H3L1-Contactenlijst-project.
  2. Geen Afbeelding Experimenteer met deze voorbeelden van map. overleg en leg daarna uit in je eigen woorden wat deze programma's doen.
    Geen Afbeelding
    Geen Afbeelding
    Geen Afbeelding
  3. Gebruik het map-blok samen met de kiezer Geen Afbeelding om een lijst met alleen de namen van alle contacten te rapporteren.

Controlevraag: map-blok

  1. Deze vraag refereert naar deze twee lijsten:
    Geen Afbeelding
    Geen Afbeelding
    Welke van deze stellingen is waar?
    Kies alle opties waarvan je denkt dat ze waar zijn.

    Geen Afbeelding rapporteert de lijst{k, 5, v, i, 3, v, 2, 3, d, 6}.
    Geen Afbeelding rapporteert de lijst {konijn}.
    Geen Afbeelding rapporteert de lijst {Leeuwarden, Assen, Maastricht, Middelburg}.
    Geen Afbeelding rapporteert de lijst {L, A, M, M}.
    Geen Afbeelding rapporteert de lijst {Friesland, Drenthe, Limburg, Zeeland}.
Terug Volgende