NXC instrukcje warunkowe i pętle
Instrukcje warunkowe
Jak w innych lekcjach dotyczących NXC zakładam, że znasz C. Dlatego nie tłumaczę wszystkiego.
IF
if (warunek) instrukcja
Instrukcja jest wykonywana tylko jeśli warunek jest prawdziwy.
Przykład:
task main() { if (Random(2)> 0) PlaySound(SOUND_DOUBLE_BEEP); }
Random(2)
Losuje liczbę z zakresu 0-2
PlaySound(SOUND_DOUBLE_BEEP)
Podwójny brzęczyk
Ten prosty program wydaje podwójny brzęk, jeśli (IF) wylosowana liczba jest większa od zera.
IF ELSE
if (warunek) instrukcja1 else instrukcja2
Jeśli spełniony jest warunek wykonywana jest instrukcja, w przeciwnym razie (ELSE) wykonywana jest instrukcja alternatywna.
Przykład:
task main() { if (Random(2)> 0) PlaySound(SOUND_DOUBLE_BEEP); else PlaySound(SOUND_LOW_BEEP); }
Jeśli (IF) wylosowano liczbę większą od zera gra podwójny brzęczyk, w przeciwnym razie (ELSE) słychać LOW_BEEP.
Pętle
WHILE
while (warunek) instrukcja
Pętla działa tak długo, jak długo spełniony jest warunek.
Przykład:
task main() { while (true) { PlaySound(SOUND_DOUBLE_BEEP); } }
W tym akurat przypadku pętla będzie nieskończona, gdyż warunek zawsze jest prawdziwy while (true)
DO WHILE
do instrukcja while (warunek)
Przykład:
task main() { do { PlaySound(SOUND_DOUBLE_BEEP); } while(Random(10) < 7); }
W wyniku tego programu brzęczyk działa dopóki nie zostanie wylosowana liczba < 7.
FOR
for(instrukcja1 ; warunek ; instrukcja2) ciąg instrukcji
Przykład:
task main() { for (int i=0; i<11; i++) { NumOut(0, LCD_LINE1, i); Wait(1000); } }
for (int i=0; i<11; i++)
przypisuje do zmiennej i wartość 0, wykonuje ciąg instrukcji między { } tak długo aż i < 11, i++ odpowiada za zwiększanie i o jeden przy każdej nowej pętli.
NumOut(0, LCD_LINE1, i)
Wyświetla w pierwszej linii wartość i.
Wynikiem tego kodu jest wyświetlanie wartości i, czyli od 0 do 10, z przerwami 1 sekundowymi.
REPEAT
repeat (wyrażenie) ciąg instrukcji
Przykład:
task main() { int i=0; repeat (11) { NumOut(0, LCD_LINE1, i++); Wait(1000); } }
Działa analogicznie jak wcześniejszy przykład. Wyświetla wartość i, czyli początkowo 0. Czynność jest powtarzana (repeat) 11 razy, przy każdej pętli wartość i zwiększana jest o 1. W rezultacie wyświetla liczby od 0 do 10.