Algorithms: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
| Zeile 41: | Zeile 41: | ||
} | } | ||
} | |||
* Mache etwas alle x-Durchläufe | |||
int loopCounter=0; | |||
int alleXLoops = 15; //Führt eine Funktion alle 15 loops aus | |||
[...] | |||
void loop(){ | |||
loopCounter++; | |||
if (loopCounter%alleXLoops==0){ | |||
DoSomethingEveryXLoops(); | |||
} | |||
} | } | ||
Version vom 26. Februar 2019, 08:39 Uhr
Alle Snippets sind zunächst Pseudocode und je nach verwendeter Programmiersprache anzupassen.
Generell
- Finde die Stelle mit der höchsten Zahl in einem Array von Zahlen:
int höchsteZahl = -1000000;
int stelle = -1;
for (int i=0;i<arrayName.länge;i++){
if (arrayName[i]>höchsteZahl){
stelle=i;
höchsteZahl=arrayName[i];
}
}
Arduino
- Führe eine Funktion einmalig aus, wenn ein Button gedrückt ist, und einmalig etwas anderes, wenn er losgelassen wird
int buttonDown =0;
int inputPin = 5; //hier muss der Pin eingetragen sein, an dem der Button hängt
[...]
void loop(){
if (digitalRead(inputPin)==LOW){
buttonDown++;
}
if (buttonDown==1){
DoSomethingOnceWhenPressed();
}
if (digitalRead(inputPin)==HIGH && buttonDown>0){
DoSomethingOnceWhenReleased();
buttonDown=0;
}
}
- Mache etwas alle x-Durchläufe
int loopCounter=0;
int alleXLoops = 15; //Führt eine Funktion alle 15 loops aus
[...]
void loop(){
loopCounter++;
if (loopCounter%alleXLoops==0){
DoSomethingEveryXLoops();
}
}
Unity
- Führe eine Funktion einmalig aus, wenn ein bestimmter Zustand erreicht ist
public bool bZustand=false;
void Update(){
if (/*ZustandsAbfrage*/){
bZustand=true;
}
if (bZustand){
DoSomethingOnce();
bZustand=false;
}
}
- Verändere die Position eines Objektes kontinuierlich entlang einer Achse
public GameObject meinObjekt //hier muss im Editor das Objekt das bewegt werden soll abgelegt werden
void Update(){
meinObjekt.transform.position += new Vector3(xWert,yWert,zWert);
}