SA-MP Forums Archive
[Duda] Uso de loops - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [Duda] Uso de loops (/showthread.php?tid=430401)



[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.