Skip to main content

Lijsten

Net als in de alledaagse taal staat ook in ROBO Pro Coding een lijst van een geordende verzameling van elementen, zoals bijv. een "To-do"-lijst of een inkooplijst. Elementen in een lijst kunnen van een willekeurig type zijn en dezelfde waarde kan meerdere malen in een lijst voorkomen.

Opstellen van een lijst

maak lijst met

Met het blok maak lijst met kun je de beginwaarden in een nieuwe lijst aangeven. In dit voorbeeld wordt een lijst van woorden gemaakt en in een variabele genaamd Letters opgeslagen.

Bild1_n.PNG

Wij omschrijven deze lijst als ["alfa", "beta", "gamma"].

Dit geeft het opstellen van een lijst van getallen weer:

Bild2_n.PNG

Zo wordt een lijst van kleuren opgesteld:

Bild3_n.PNG

Het is minder gebruikelijk, maar het is mogelijk om een lijst met waarden van verschillende te maken:

Bild4_n.PNG

Aantal ingangen veranderen

Om het aantal ingangen te veranderen, moet je op het tandwielsymbool klikken of deze aanraken. Daardoor wordt een nieuwe venster geopend. Je kunt subblokken van elementen van de linker kant van het venster naar het lijstenblok aan de rechter kant trekken, om een nieuwe ingang toe te voegen.

Terwijl het nieuwe element in dit voorbeeld onderaan is toegevoegd, kan het overal worden toegevoegd. Op vergelijkbare wijze kunnen ongewenste subblokken van elementen uit het lijstenblok naar links worden getrokken.

Lijst met element opstellen

Met het blok stel lijst met element op kun je een lijst opstellen die het aangegeven aantal kopieën van een element bevat. De onderstaande blokken zetten bijvoorbeeld de variabele woorden op de lijst ["heel", "heel", "heel"].

Bild5_n.PNG

De lengte van een lijst controleren

is leeg

De waarde van een is leeg-blok is waar, wanneer de invoer de lege lijst is en onwaar, wanneer het iets anders is. Is deze invoer waar? De waarde van het volgende blok zou onwaar zijn, omdat de variabele kleuren niet leeg is: Deze heeft drie elementen.

Bild6_n.PNG

Let op de gelijkenis met het is leeg-blok voor tekst.

Lengte van

De waarde van het blok lengte van is het aantal elementen dat in de als invoer gebruikte lijsten is opgenomen. De waard van het volgende blok zou bijvoorbeeld 3 zijn, omdat kleur drie elementen heeft.

Bild7_n.PNG

Let erop dat het blok lengte van aangeeft hoeveel elementen in de lijst zijn opgenomen en niet hoeveel verschillende elementen erin inzetten. Zo heeft bijvoorbeeld de volgende de waarde 3, hoewel woorden uit drie kopieën uit dezelfde tekst bestaat.

Bild8_n.PNG

Let op de gelijkenis met het lengte van-blok voor tekst.

Zoeken van elementen in een lijst

Deze blokken vinden de positie van een element in een lijst. Het volgende voorbeeld heeft de waarde 1, omdat het eerste voorkomen van "heel" aan het begin van de woordenlijst staat (["heel", "heel", "heel"]).

Bild9_n.PNG

Het resultaat van de volgende is 3, omdat het laatste voorkomen van "heel" in woorden op positie 3 staat.

Bild10_n.PNG

Wanneer het element nergens in de lijst voorkomt, is het resultaat van de waarde 0, zoals in dit voorbeeld:

Bild11_n.PNG

Deze blokken werken hetzelfde als de blokken voor het vinden van letters in tekst.

Openen van elementen in een lijst

Openen van een afzonderlijk element

Denk aan de definitie van de lijst kleuren:

Bild3_n.PNG

Het volgende blok bevat de kleur blauw, omdat dat het tweede element in de lijst is (vanaf links beginnend te tellen):

Bild13_n.PNG

Deze bevat groen omdat dat het tweede element is (vanaf rechts beginnend te tellen):

Bild14_n.PNG

Deze bevat het eerste element, rood:

Bild15_n.PNG

Deze bevat het laatste element, geel:

Bild16_n.PNG

Dit selecteert toevallig een element uit de lijst, waarbij met dezelfde waarschijnlijkheid een van de elementen, rood, blauw, groen of geel wordt weergegeven.

Bild17_n.PNG

Openen en verwijderen van een element

Via het dropdown-menu wordt het blok uit lijst ... openen in het blok uit lijst ... openen en verwijderen gewijzigd die dezelfde weergave levert, maar ook de lijst verandert:

Bild18_n.PNG

Dit voorbeeld zet de variabele eerste letter op "alfa" en laat de resterende letters (["beta", "gamma"]) in de lijst.

Bild19_n.PNG

Een invoer verwijderen

Wanneer je in het dropdown-menu verwijderen kiest, verdwijnt de lip links van het blok:

Bild20_n.PNG

Daarmee wordt het eerste element uit letters verwijderd.

Een sublijst openen

Het blok uit lijst ... Sublijst openen lijkt op het blok in uit lijst ... openen met dat verschil dat deze een uittreksel van een sublijst maakt en niet een afzonderlijk element. Er zijn meerdere opties, om het begin en het einde van de sublijst aan te geven:

Bild21_n.PNG

Bild22_n.PNG

In dit voorbeeld wordt een nieuwe lijst eerste letter opgesteld. Deze nieuwe lijst heeft twee elementen: ["alfa", "beta"].

Bild23_n.PNG

Let erop dat dit blok de oorspronkelijke lijst niet verandert.

Toevoegen van elementen aan een lijst

Elementen van een lijst verwijderen

Het blok in lijst ... vervang vervangt het element op een bepaalde plaats in een lijst door een ander element.

Bild24_n.PNG

De betekenis van de afzonderlijke dropdown-opties vindt je in het vorige hoofdstuk.

Het volgende voorbeeld zorgt voor twee dingen:

  1. De lijst woorden wordt met 3 elementen opgesteld: ["heel", "heel", "heel"].
  2. Het derde element in de lijst wordt door "goed" vervangen. De nieuwe waarde van woorden is ["heel", "heel", "goed"]

Bild25_n.PNG

Elementen op een bepaalde plaats in een lijst toevoegen

Het blok in lijst ... toevoegen bij wordt via het dropdown-menu van het in lijst ... vervang-blok geopend:

Bild26_n.PNG

Deze voegt een nieuw element op de aangegeven plaatst in de lijst toe, en wel voor het element, dat eerder op deze plaats stond. Het volgende voorbeeld (dat op een eerder voorbeeld is gestoeld) doet drie dingen:

  1. De lijst woorden wordt met 3 elementen opgesteld: ["heel", "heel", "heel"].
  2. Het derde element in de lijst wordt door "goed" vervangen. De nieuwe waarde van woorden is daarmee ["heel", "heel", "goed"].
  3. Het woord "Wees" wordt aan het begin van de lijst toegevoegd. De uiteindelijke waarde van woorden is daarmee ["Wees", "heel", "heel", "goed"].

Bild27_n.PNG                             

De tekensketting verdelen en in lijsten samenvoegen

Een lijst vanuit een tekst opstellen.

De bouwsteen stel lijst op vanuit tekst knipt de aangegeven tekst met behulp van een begrenzingsteken in delen:

Bild28_n.PNG

In het bovenstaande voorbeeld wordt een nieuwe lijst geretourneerd, die drie tekststukken bevat: "311", "555" en "2368".

Een tekst vanuit een lijst opstellen.

De bouwsteen stel een tekst op uit lijst voegt een lijst met behulp van een scheidingsteken tot één enkele tekst samen:

Bild29_n.PNG

In het bovenstaande voorbeeld wordt een nieuwe tekst met de waarde geretourneerd: "311-555-2368".

Soortgelijke blokken

Afdrukken van een lijst

Met de bouwsteen afdrukken in de categorie Tekst kun je lijsten afdrukken. Het resultaat van het onderstaande programma is de afgebeelde console-afdruk:

Bild30_n.PNG

Konsole_n.PNG

Iets voor elke element in een lijst uitvoeren

Het blok voor-iedereen in de categorie Besturing voert een handeling voor elk element in de lijst uit. Dit blok drukt bijvoorbeeld elk element in de lijst apart af:

Bild31_n.PNG

Daardoor worden de elementen niet uit de oorspronkelijke lijst verwijderd.

Zie ook de voorbeelden voor de loop-afbreekblokken.