Dart & Flutter Guides 8 – Løkker i Dart

I denne artikel skal vi kigge på hvordan løkker (loops) håndteres i Dart.

Løkker eller loops er en vigtig del af et programmeringssystem, fordi det giver mulighed for at kunne gentage en kode. Det skal vi se nærmere på her.

Man skelner mellem bestemte (for loops) og ubestemte (while loops) løkker. Vi skal starte med at kigge på den bestemte løkke, der også hedder en for loop. Dette er en type løkke hvor antallet af gange en kode skal gentages er defineret. Strukturen for en for loop ser således ud:

for (initial_count_value; termination-condition; step) { 
   //Her skrives kode
} 

Her er et eksempel, hvor en for loop beregner faktor 5, dvs. 5*4*3*2*1. Der defineres et tal i der starter med værdien 5. Så siger vi at løkken skal blive ved med at køre så længe i er større eller lig med 1. Herefter skal løkken for hver gang koden gentages trække 1 fra i. Selve koden der skal køres er tallet faktor, som starter med værdien 1 og så ganges med i hver gang. Resultatet der skrives på skærmen er 120, der netop er faktor 5.

   var faktor = 1; 
   
   for( var i = 5 ; i >= 1; i-- ) { 
      faktor *= i ; 
   } 
   print(faktor);

Den ubestemte løkke kaldes også for en while loop, og det er en løkke hvor man ikke ved eller kan bestemme hvor mange gange løkken skal køre. Den generelle struktur er således:

while (expression) {
   Her skrives kode
}

Ideen med denne løkke er at den kører så længe expression er sand. I nedenstående eksempel beregner vi igen faktor 5, bare med en while loop. Først definerer vi et tal num der er lig med 5 og faktor der er lig med 1. Så siger vi at løkken skal køre så længe num er 1 eller højere. Herefter trækker vi 1 fra num hver gang løkken kører og ganger den på faktor. Resultatet er igen 120.

   var num = 5; 
   var faktor = 1; 
   
   while(num >=1) { 
      faktor = faktor * num; 
      num--; 
   } 
   print("Resultatet er ${faktor}"); 

En modifikation af while loop er do-whle loop. Her evalueres betingelsen bare ikke første gang den kører. Strukturen ser således ud:

do {  
   // Her skrives koden
} while (expression); 

Her er et eksempel hvor der tælles ned fra 10 til 0.

var n = 10; 
   do { 
      print(n); 
      n--; 
   }
   while(n>=0); 

Det er lidt smag og behag hvilken type løkke du vælger, og nogle er bedre i nogle situationer end andre. Prøv dig lidt frem. Læs også resten af artiklerne i denne serie med Dart guides. I næste artikel skal vi se hvordan man skriver kommentarer i sin Dart kode.

5 1 vote
Article Rating

Andreas Andersen

Forfatter og grundlægger af IT-blogger.dk, der har blogget om IT-emner siden 2012. Findes på Mastodon på @aphandersen@ansico.dk

You may also like...

Abonner
Giv besked ved
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x