Arexx RP6 V2 Build your own robot kit RP6 V2 User Manual

Product codes
RP6 V2
Page of 141
RP6 ROBOT SYSTEM -  4. Programmierung des RP6
Es gibt dann noch ein paar nützliche Abkürzungen:
z += 10;  // entspricht: z = z + 10; also ist z = 15
z *= 2;   // z = z * 2 = 30
z -= 6;   // z = z - 6 = 24
z /= 4;   // z = z / 4 = 8
z++;  // Abkürzung für z = z + 1; Also ist z hier 9
z++;  // z = 10  // z++ nennt man auch „z inkrementieren“
z++;  // z = 11 ...
z--;  // z = 10  // z-- nennt man auch „z dekrementieren“
z--;  // z = 9
z--;  // z = 8 ...
Oben haben wir noch den Datentyp „char“ verwendet. Wie aber schon gesagt, werden 
in allen anderen Programmen des RP6 (fast) nur standardisierte Datentypen verwen-
det. 
So z.B. wäre folgendes:  
int8_t x; 
identisch zu:  
signed char x;
Und: 
uint8_t x;
identisch zu:  
unsigned char x;  // bzw. bei uns eigentlich auch einfach nur 
„char“ da dieser Datentyp standardmäßig „unsigned“ ist.
4.4.5. Bedingungen 
Bedingungen mit „if-else“ Konstrukten sind sehr sehr wichtig um den Programmablauf 
zu steuern. Man kann mit ihnen überprüfen, ob eine gegebene Bedingung wahr oder 
falsch ist und je nachdem bestimmten Programmcode ausführen oder nicht.
Direkt ein kleines Beispiel:
1  
2  
3  
4  
5    
uint8_t
 x = 
10
;
if
(== 
10
)
{
writeString(
"x ist gleich 10!\n"
); 
}
Hier wird in Zeile 1 zunächst die 8-Bit Variable x deklariert und ihr der Wert 10 zuge-
wiesen. Jetzt überprüfen wir in der nachfolgenden if-Bedingung in Zeile 2, ob die Va-
riable x den Wert 10 hat. Das ist hier natürlich immer der Fall und somit wird der 
Block unter der Bedingung ausgeführt und „x ist gleich 10!“ ausgegeben. Hätten wir x 
stattdessen mit 231 initialisiert, wäre an dieser Stelle nichts ausgegeben worden!
Allgemein hat eine if-Bedingung immer folgende Syntax: 
if ( <Bedingung X> )
<Anweisungsblock Y>
else
<Anweisungsblock Z>
Ins Deutsche übersetzt heisst das übrigens soviel wie: „wenn X dann Y sonst Z“.
- 69 -