[Duda] Uso de loops -
sonnkz - 13.04.2013
Bueno, quisiera saber si alguien me puede enseсar a usar bucles o loops, se que son muy utiles pero hace bastante tiempo quiero aprender a usarlos y no entiendo, mire la guia de the chaoz pero como esta muy separando no entiendo, gracias!
Respuesta: [Duda] Uso de loops -
JustBored - 13.04.2013
fijate la guia de xSDx
Respuesta: [Duda] Uso de loops -
NeuZz - 13.04.2013
bueno lo que hace es repetir una funcion tomando el valor de una variable y aumentandolo hasta llegar al que definiste
Respuesta: [Duda] Uso de loops -
Parka - 13.04.2013
ejemplo:
pawn Код:
for(new i; i < 5; i++)// te mandara 5 mensajes, pero tambiйn puedes usar la 'i' si quieres que funcione de otro modo
{
SendClientMessageToAll( -1 , "Esto es un simple ejemplo..!");
}
Respuesta: [Duda] Uso de loops -
adri1 - 13.04.2013
Los bucles es para repetir funciones X veces con valores:
pawn Код:
for(new i = 0; i != 5; i++) //Empieza a contar desde el 0 hasta el 5, por lo que pongamos dentro del cуdigo
//se harб 5 veces. Si traducimos eso al espaсol serнa; Para i que es igual a 0, mientras que i no sea 5, i se sumarб
// tambiйn podemos restarla:
for(new i = 5; i != 0; i--) // Serнa igual pero al revйs; Para i = 5, mientras que i no sea 0, restamos la i.
// y cada vez que se suma o resta, se llama al cуdigo de dentro;
// ejemplo de uso:
for(new x = 0; x != GetMaxPlayers(); x++) // X = 0, mientras que X no sea el total de slots, se suma.
{
if(IsPlayerConnected(x)) // Verifica si el jugador x estб conectado
{
SetPlayerHealth(x, 100.0); // en este caso para rellenar la vida a todos
}
}
//ahora lo mismo pero al revйs:
for(new x = GetMaxPlayers(); x != 0; x--)
{
if(IsPlayerConnected(x)) // Verifica si el jugador x estб conectado
{
SetPlayerHealth(x, 100.0);
}
}
//las dos sirven.
While
while es muy parecido al tнpico
for, solo que en este podemos saltar valores, sumarlos etc.
Ejemplo:
pawn Код:
new x = 0;
while(x != GetMaxPlayers()) //Mientras que x no sea igual a GetMaxPlayers:
{
if(IsPlayerConnected(x))
{
SetPlayerHealth(x, 100.0);
}
x++; // en este caso es necesario sumar la variable manualmente
}
//Lo mismo pero restando:
new x = GetMaxPlayers();
while(x != 0)
{
if(IsPlayerConnected(x))
{
SetPlayerHealth(x, 100.0);
}
x--;
}
Espero haberte ayudado, tambiйn lee
esto.
Saludos
Respuesta: [Duda] Uso de loops -
xSDx - 13.04.2013
basicamente existen 3 clases de bucles, for, while y do while, la mayoria usan for por que es el mas practico te dejo un ejemplo
pawn Код:
new mivar[MAX_PLAYERS]; // cuando ponemos max players ponemos 500 variables, esto sirve para no repetir muchas veces mivar1 mivar2 etc.
public OnGameModeInit() // si queremos igualar las variables a 0 antes que se conecten los jugadores, lo podemos hacer de esta manera
{
for(new playerid=0;playerid<MAX_PLAYERS;playerid++) // aqui el bucle especifica que comenzara por la variable playerid que esta igualada a 0, luego se especifica cuando debe ejecutarse en este caso mientras sea menor a el limite,luego se especifica cuantas unidades se incrementan, lo que hace es que sumaria 1 cada vez que se ejecute.
mivar[playerid]=0;
}
Respuesta: [Duda] Uso de loops -
Dreyfuz - 13.04.2013
Pufff..
Si con todo eso no aprendiу..
Respuesta: [Duda] Uso de loops -
JustBored - 13.04.2013
Che, їcуmo funciona el do-while?
Respuesta: [Duda] Uso de loops -
sonnkz - 13.04.2013
no se si esta bien lo que voy a decir
ejemplo, en este codigo que me pasaste
pawn Код:
for(new x = 0; x != GetMaxPlayers(); x++) // X = 0, mientras que X no sea el total de slots, se suma.
{
if(IsPlayerConnected(x)) // Verifica si el jugador x estб conectado
{
SetPlayerHealth(x, 100.0); // en este caso para rellenar la vida a todos
}
}
ahi lo que hace es declarar la variable, en este caso x = 0, despues si x = 0 no esta en 500(MaxSlot) se le suma 1 a x, cada ves que se suma 1 a x se ejecuta la funcion que les da vida ?
Muchisimas gracias a todos
Respuesta: [Duda] Uso de loops -
Dreyfuz - 13.04.2013
Quote:
Originally Posted by JustBored
Che, їcуmo funciona el do-while?
|
do-
while funciona igual que
while con la diferencia de que primero se ejecuta el cуdigo dentro del
do y despuйs hace la comparaciуn( o sentencia) en el
while.