Habe vergessen wie man "Unterprogramme" macht

Ich denke Funktion ist schon das richtige hier.

Mal in Pseudocode

int y=0;  // globale definition

void setup(){
//whatever
}

void loop(){
rechteck(123);  // du kannst auch variabeln übergeben z.b. Geschwindigkeit
y=summe(1,3); // y ernthält die summe (ergebnis von der variabeln) du kannst die Funtion summe auch merhmals aufrufen
}

byte summe(int x,int y){   // mit dem byte vor der funktion definierst du das format der zurückegebenen Variabeln also auch int,long
byte ergebnis; 
ergebniss=x+y;    // zusammenrechenen der übergebenen Variabeln
return ergebnis; // damit schickst du das ergebniss zurück in die loop
}

void rechteck(int x){   // Jetzt steht in x die 123 aus dem Programm z.B. Geschwindigkeit void heisst das du nix zurückbekommst
// hier kannst du jetzt irgenwas mit x machen aber auch nur innerhalb dieser Funktion in der Loop kannst du dieses x nicht sehen sie ist hier lokal definiert
gehe vor;
dreh dich;
gehe vor;
dreh dich;
gehe vor;
dreh dich;
gehe vor;
dreh dich;
 }

Jedesmal wenn du rechteck() im Programm aufrufst unter welchen Konditionen auch immer kannst werden die Funktionen die in dem void rechteck() ausgeführt.
Hoffe nicht in die komplett falsche richtig unterwegs zu sein.
Gruß
Der Dani