KS3 Datarepræsentation (14-16 år)
- En redigerbar PowerPoint-lektionspræsentation
- Redigerbare revisionshåndbøger
- En ordliste, der dækker de vigtigste terminologier i modulet
- Topic mindmaps til visualisering af de vigtigste begreber
- Udskrivbare flashcards til at hjælpe eleverne med at engagere sig aktivt i at huske og selvtillid-baseret repetition
- En quiz med tilhørende svarnøgle til at teste viden om og forståelse af modulet
A-Level Arrays, tuples and records (16-18 år)
- En redigerbar PowerPoint-lektionspræsentation
- Editable revision handouts
- En ordliste, der dækker de vigtigste terminologier i modulet
- Topic mindmaps til at visualisere de vigtigste begreber
- Udskrivbare flashcards til at hjælpe eleverne med at engagere sig aktivt i at huske og selvtillid-baseret repetition
- En quiz med tilhørende svarnøgle til at teste viden og forståelse af modulet
Et array er en dataramme, der består af en gruppe af elementer. Disse elementer har lignende datatyper, f.eks. er alle hele tal, eller alle er strenge. Arrays udnyttes i computerprogrammer til at arrangere data, hvor indbyrdes relaterede sæt af værdier kan kategoriseres og lokaliseres.
Et eksempel på en praktisk anvendelse af array er i søgemaskiner. En søgemaskine kan gøre brug af et array til at gemme de websider, som en bruger er stødt på i en søgning, der er foretaget af en bruger. For at vise søgeresultaterne vil programmet vise et element af arrayet ad gangen. Dette kan gøres for et bestemt antal værdier eller indtil alle værdier er blevet vist. Programmet har mulighed for at tildele en ny variabel for hvert fundet søgeresultat, men at gøre brug af et array er en effektiv måde at styre hukommelsesforbruget på.
En anden situation, der kræver praktisk brug af array, er ved lagring af heltalstal. Hvis du har brug for at gemme 3 heltalstal, kan du oprette 3 variabler med datatype heltal. Det ville være enkelt. Men hvad nu, hvis du har brug for at gemme 300 hele tal? Er det praktisk at oprette 300 variabler med heltalsdatatype? Eller er det mere praktisk at oprette en array-variabel med heltalsdatatype fra 0 til 299?
Karakteristika ved et array
- Hvert element har samme datatype, mens de kan have forskellige værdier.
- Hele arrayet gemmes sammenhængende i hukommelsen, hvilket betyder, at der ikke er mellemrum mellem elementerne.
Dimensioner for et array
- Vektor er et endimensionelt array.
- Matrix er et todimensionelt array.
Komponenter i et array
En vektor har følgende komponenter:
- Navn er en gyldig identifikator.
- Type er en gyldig datatype, f.eks. int, float, osv. Dette er datatypen for alle arrayelementer.
- Extent er intervallet af indekser for arrayelementer.
- Eksempelvis kan intervallet for et array være 0 til 4 (element 0, element 2, …, element 4)
- Indeksene skal være hele tal inden for intervallet.
- Det mindste indeks betegnes som den nedre grænse.
- Det største indeks betegnes som den øvre grænse.
- Udvidden af et array er smaller-integer:larger-integer
- hvor smaller-integer er den nedre grænse
- hvor larger-integer er den øvre grænse
- I eksemplet ovenfor er omfanget 0:4
Opretning af et array
For at oprette et array skal du angive typen af elementer og antallet af elementer, der skal gemmes i arrayet. Her er en simpel syntaks ved oprettelse af et array i C-programmering:
type arrayName;
hvor type er en hvilken som helst gyldig datatype i C
hvor arrayName er en gyldig identifikator
hvor arraySize er et konstant heltal > 0
Eksempel:
int number;
Deklaration af et array
Syntaksen for deklaration af arrays er som følger:
type, DIMENSION(extent) :: name-1, name-2, …, name-n
hvor type er arrays’ datatype
hvor DIMENSION er et påkrævet nøgleord
hvor extent angiver intervallet for array-indeksene
hvor name-1, name-2, …, name-n er array-navnene
Eksempel:
REAL, DIMENSION(-2:2) :: b, Total
INTEGER, DIMENSION(0:50) :: DataEntry
Eelementerne i arrays b og Total er reelle tal, og indeksene er i intervallet -2 og 2.
Eelementerne i arrayet DataEntry er hele tal, og indeksene ligger i intervallet 0 og 50.
De hele tal kan i en vis grad være parametre.
Eksempel: