colobot-data/help/P/tfor.txt

58 lines
2.3 KiB
Plaintext

\b;Ćwiczenie
Zniszcz sześć \l;celów\u object\bottarg; używając programu z pętlą. Odległości pomiędzy celami wynoszą 5 metrów.
\b;Ogólny algorytm
Program powinien być uruchomiony według następującego schematu:
Powtórz 6 razy:
o idź 5 m naprzód.
o skręć o 90 stopni w lewo
o strzelaj
o skręć o 90 stopni w prawo
\image tfor1 14 5;
\b;Instrukcja \c;for ( )\n;
Instrukcja \c;\l;for\u cbot\for;\n; wymaga 3 wyrażeń:
1) Inicjalizacji zmiennej liczącej.
2) \l;Warunku\u cbot\cond; zakończenia pętli.
3) \l;Wyrażenia\u cbot\expr; liczącego.
Oto pętla umieszczona w programie:
\s;\c;extern void object::Masakra( )
\s;{
\s; for ( int i=0 ; i<6 ; i=i+1 )
\s; {
\s; \n;instrukcje powtarzane 6 razy...\c;
\s; }
\s;}
\n;
UWAGA: Na końcu wiersza z \c;for ( )\n; nie powinno być \l;średnika\u cbot\term;!
\b;Opis instrukcji \c;for ( )\n;
1) \c;int i=0\n;
Przed rozpoczęciem pętli \l;zmiennej\u cbot\var; i jest przypisywana wartość 0.
2) \c;i<6\n;
Pętla będzie wykonywana tak długo, aż wartość zmiennej i będzie mniejsza od 6.
3) \c;i=i+1\n;
Zwiększa o 1 zmienną i na końcu każdej pętli.
\b;Bloki
Do utworzenia \l;bloku\u cbot\bloc; użyj nawiasów klamrowych \c;{ }\n;. Wszystkie instrukcje, które powinny być wykonywane przez pętlę \c;for\n; są zgrupowane w blok. Również cały program jest blokiem:
\c;
\s;extern void object::Masakra( )
\s;{
\s; \n;tutaj wpisz instrukcje...\c;
\s;}
\n;
Nigdy nie zmieniaj tych znaków. Wystarczy dodać instrukcje programu pomiędzy klamrami.
Możesz umieszczać bloki wewnątrz innego bloku. Na przykład blok \c;for\n; jest zagnieżdżony w bloku całego programu. W celu poprawy czytelności programu, edytor ustawia w odpowiednich liniach klamry należące do różnych bloków.
\b;Zapamiętaj
Instrukcja używana do poruszania się naprzód: \c;\l;move\u cbot\move;();\n;.
Instrukcja używana do obracania robota: \c;\l;turn\u cbot\turn;();\n;. Kąt dodatni obraca w lewo.
Instrukcja używana do strzelania z działka: \c;\l;fire\u cbot\fire;(1);\n;. Jednosekundowa seria umożliwia zniszczenie wszystkich sześciu \l;celów\u object\bottarg;.
\t;Zobacz również
\l;Programowanie\u cbot;, \l;typy\u cbot\type; i \l;kategorie\u cbot\category;.