8. calls en for-statement

voorbeeld van een call en for-statements:


algemene schrijfwijze for-statement:

for (argument) {

code;

}

of zoals in de code hieronder wordt aangegeven:

void setup() {

for (int i=2; i<6; i++) // dus (argument) maak van alle poorten 2 t/m 5 een uitgang (OUTPUT), i is een lokale variabele 

{
pinMode (i,OUTPUT); // code
delay(1000);
}


-----------------------------------------

met call functie

// geen variabelen nodig
// functieblokken (i=2; i<6; i++) wordt 4x doorlopen 
// for-statement niet afsluiten met punt-komma, maar na for statement nieuwe accolade openen voor code
// de variabele i betreft in dit geval de poorten 2,3,4,5
// die worden laag, LOW gemaakt

void setup() {
for (int i=2; i<6; i++) // maak van alle poorten 2 t/m 5 een uitgang (OUTPUT) 
{
pinMode(i,OUTPUT);
}
delay(1000);
}

// volgend functieblok

void uit() 

{
for (int i=2; i<6; i++)
{

  digitalWrite(i,LOW);
}  
delay(1000);

// loop functieblok

void loop() 

{

uit(); // call vanuit void uit() , als void uit() 1x is doorlopen wordt het programma voortgezet naar void loop en begint bij uit();

for (int i=2; i<6; i++)  

{
digitalWrite(i,HIGH);
delay(1000);
}

}


----------------------------------------

met call functie 2


// er worden geen variabelen gebruikt
// de setup wordt slechts 1x doorlopen:

void setup() 

{    

for (int i=2; i<6; i++)

{   // voor i=2,3,4,5 doe...
pinMode(i, OUTPUT);        // led i = uitgang
}

}


// de loop wordt eindeloos herhaald:

void loop()  
{         // begin loop
 
uit();                          // call naar de functie uit() die hieronder staat

for (int i=2; i<6; i++)

{   // voor i=2,3,4,5 doe...
  digitalWrite(i, HIGH); // led i = aan
  delay(1000);             // 1s wachten
}

}                            // einde van de loop


void uit()  
{                  // begin functie uit

for (int i=2; i<6; i++){   // voor i=2,3,4,5 doe...
digitalWrite(i, LOW);  // led i = uit
}
  delay(1000);             // 1s wachten
}                            // einde functie uit() en terug naar de loop for functie


----------------------------------

for loops in combinatie met else-statements.


nog een voorbeeld van een for loop, in dit geval een optel lus van 1 t/m 9
 
void setup()

 {
 Serial.begin(9600);
 }

 void loop()

{
for (int i=1;i<10;i++) 

{
Serial.println (i); // via de seriele monitor wordt de optelling 1 t/m 9 zichtbaar gemaakt. 
delay(1000); 
}

}
 
------------

idem voorbeeld maar nu met een extra voorwaarde ingebouwd in de vorm van een "if-statement":
 
void setup()

{
 Serial.begin(9600);

}

 void loop()

{
for (int i=1;i<10;i++) 

{
Serial.println (i);
delay(500);

 if (i==8)  Serial.println("negen");  // ander optie zou kunnen zijn: if (i>8) Serial.println("negen");
}

}

---------------
 

//voorbeeld van een for loop, optel lus van 1 t/m 9 met for, if , else statement


void setup()

 {
 Serial.begin(9600);
 }

 void loop()

 {

for (int i=1;i<10;i++) 

{
Serial.println (i);
delay(500);

if (i==8)  Serial.println("acht"); /* nu met extra else statement toegevoegd, dus alles wat niet overeenkomt met het getal 8 wordt omschreven als "cijfers"*/.
 
else Serial.println ( "cijfers");

}

}