Jump to content

[Tut] Cyklus A Jeho Využití [**]


Hip

Recommended Posts

  • Globální moderátor

Cyklus a jeho využití

 

 

Obtížnost: obtiznost_2.jpg

 

 

Obsah

  • Úvod
  • Cyklus for
  • Cyklus while

Úvod

 

Cyklus je pomůcka, která nahrazuje vypisovat více příkazů. Pokud potřebujeme např. všem gráčům nastavit peníze, tak místo aby jsme vypisovali všechny ID tak použijeme cyklus. (Cyklus for) Cyklus while je používán pro opakování příkazu dokud není splněna podmínka v zadání. Toto jsou dva základní cykly, které si dnes ukážeme jak na ně. Jsou ještě další cykly, ale ty jsou trochu těžší a ty vám představím jindy.

 

Cyklus for

 

Vysvětlíme si ho na příkladu, který jsem psal v úvodu.

 

for(new id; id<MAX_PLAYERS; id++)
{
GivePlayerMoney(id,5000);
}

 

Popořadě:

 

for - název cyklu

 

new id; - název proměnné (návod ZDE)

 

id<MAX_PLAYERS - tímto jsme omezili max. velikost proměnné. Neboli se pořád proměnná id nebude navyšovat a nastavovat do nekonečna. Tedy je tu id je menší než maximální počet hráčů.

 

id++ - tj. že se id bude navyšovat.

 

Další možnosti využití:

 

for(new id = 5; id<10; id++)
{
GivePlayermoney(id,5000);
}

 

Takto cyklus nastaví peníze hráčům s id 5, 6, 7, 8, 9. Nezapomeňte že porovnávací < je že je menší. A pokud je na serveru max. počet hráčů 200 tak for pojede do 199, to ale nevadí protože 1. hráč má id 0 a poslední může mít 199.

 

Další možnost je použití brake a continue.

 

for(new x; x<10; x++)
{
if(x == 5)
{
continue; // Přeskočí číslo
}
}

 

continue přeskočí číslo v cyklu. Číselná řada tu tedy bude:

 

0

1

2

3

4

6

7

8

9

 

for(new x; x<10; x++)
{
if(x == 5)
{
break; // Zastaví cyklus
}
}

 

break zastaví cyklus. Číselná řada bude:

 

0

1

2

3

4


 

Cyklus while

 

Cyklus while se používá trochu jinak.

 

new i; // Vytvoříme proměnou do které budeme zapisovat, kolikrát se cyklus provedl
while(i < 10) // Cyklus se bude opakovat do doby, dokud bude splněna tato podmínka (v závorce)
{
SendClientMessageToAll(0xFFFFFF,"Cyklus se opakuje");
i++; // Navýšíme že se cyklus opakoval
}// Když cyklus dojede na konec, tak se znovu spustí a bude spouštět dokud proměnná i bude menší 10

 

Celkově cyklus udělá to, že vypíše všem větu - "Cyklus se opakuje"

(Vypíše 10× větu)

 

Zajímavost:

new i;
while(i < 10)
{
i++;
SendClientMessageToAll(0xFFFFFF,"Cyklus se opakuje");
i--;
}

 

Takto se bude cyklus provádět do nekonečna.

 

Pozn.: Nejsem si jist, ale myslím, že je potřeba, aby se nějak měnila hodnota i, jinak to bude házet errory

 

Konec, případné chyby mi prosím napište

Link to comment
Share on other sites

Cyklus while je používán pro opakování příkazu dokud není splněna podmínka v zadání.

 

A jak tedy fungují ostatní cyklusy?

 

 

jinak pěkný návod, já mám rád cyklování a můj nejoblíbenější cyklus je while :))

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...