Arrayer
Innledning
I dette kapittelet skal vi se nÊrmere pÄ hvordan du ved hjelp av arrayer kan organisere massevis av verdier pÄ en mer effektiv mÄte enn med enkeltstÄende variabler. I LÞkker gÄr vi gjennom lÞkker (loops). Med kombinasjonen av arrayer og lÞkker kan du lage omfattende skisser uten Ä skrive veldig mye kode.
Forskjellen pÄ variabler og arrayer
Det finnes forskjellige typer variabler (f.eks. int og long), men felles for dem er at de bare kan inneholde én verdi. I blant er det praktisk Ä kunne lagre flere verdier. Da brukes arrayer, som er lister med variabler.
Et array er som en tabell med en kolonne og flere rader. Man kan ogsÄ ha sÄkalte todimensjonale arrayer med flere kolonner og flere rader. Slike brukes i mange andre programmeringssprÄk, men i Arduino-sammenheng brukes de sparsomt fordi de raskt okkuperer mye av det begrensede minnet.

Deklarasjon og initiering
I tidligere eksempler har vi lagret hvor mange epler som Alice og Bob har plukket, i enkeltstĂ„ende variabler (f.eks. usignerte int-variabler eller long-variabler).Â
long fruitsAlice = 1000; long fruitsBob = 1100;
Med bare to epleplukkere er det ikke noe problem, men det blir raskt upraktisk hvis epleplukkerne blir flere.
long fruitsAlice = 1000; long fruitsBob = 1100; long frutsCharlie = 1200; long fruitsDave = 1300;
Ved Ä i stedet lagre verdiene i et array blir koden enklere Ä hÄndtere. Det gjÞr vi ved Ä lage et long-array som vi kaller fruitsStatus. Vi deklarerer arrayet pÄ samme mÄte som en variabel, men vi legger til to hakeparenteser pÄ slutten. Mellom hakeparentesene skriver vi hvor mange long-variabler vi skal kunne lagre i arrayet.
long fruitsStatus[4];
Deretter kan vi med fĂžlgende kode lagre hvor mange epler Alice, Bob, Charlie og Dave har plukket. Vi angir plassene i arrayet som vi vil lagre verdiene i, ved Ă„ skrive plassnummeret i hakeparentes. Merk at den fĂžrste plassen har plassnummer 0, den andre har plassnummer 1 osv.
fruitsStatus[0] = 1000; fruitsStatus[1] = 1100; fruitsStatus[2] = 1200; fruitsStatus[3] = 1300;Verdiene ligger pÄ hver sin plass i arrayet.
Hvis vi allerede vet verdiene nÄr vi deklarerer, kan vi skrive koden enda mer effektivt slik:
long fruitsStatus[] = {1000, 1100, 1200, 1300};
Legg merke til at vi ikke trenger skrive hvor langt arrayet skal vĂŠre. Hvis vi initierer arrayet med fire verdier i deklarasjonen, blir arrayet automatisk fire verdier langt.
Streng-array
En streng er egentlig ikke noe mer enn et array av tegn (char). Siden strenger brukes sÄ ofte, har det blitt utviklet en egen klasse for strenger (String) som gjÞr at de fÄr samme virkemÄte som variabler. Du kan til og med lage arrayer med strenger.
Hvis vi vil lagre navnene pÄ hvem som har plukket sÄ og sÄ mange epler, kan vi lage et tilhÞrende string-array med fÞlgende kode:
String names[] = {"Alice", "Bob", "Charlie", "Dave"};
Legg merke til at navnene i names ligger pÄ samme relative posisjon som det tilhÞrende antall plukkede epler i fruitsStatus.

