08.07.2012, 16:56
(
Последний раз редактировалось Shiny_David; 09.07.2012 в 04:14.
)
Uso De for, while, do while
Que Es for, while, do whileї
Sencillamente Son Solo Ciclos Que Se Usan En Muchos Casos Para Buscar Algo En Una Funcion Especifica, Muchos Utilizaron "for" y Aunque No Sabian Que Es Lo Usan Para Buscar Players En Funciones Vacias, Tambien Sirve Para Hace Repeticiones De Funciones
La Diferencia Clave Entre Ellos
La diferencia entre ellos recide en un punto clave. Cuando se utiliza un for, a diferencia de un while/do, se conoce el fin del ciclo o bucle, en cambio, cuando se utiliza un while puede conocerse el mismo o suponerce, pero no sabemos con certeza (hay excepciones) cuando terminara el ciclo, ya que en general los puntos de quiebre o salida se los define como "while(variable('<'/'>'/'!=')valor)..." es decir menor, mayor, o distinto de, entre otros.
Usando "for"
Aqui Les Dejo Los Parametros que Se Usarian
Usando "while"
Usando "do while"
Por Eso Todos Prefieren Usar "for" por Que En Una Linea Pones Lo Que Deberia Ser En 3..
Practicamente Es Lo Mismo En Todos.. Aunque Puede Que Necesites Algunas Veces Usar Diferentes Ciclos
Tambien Pueden Usar Este Macro Para Reducir El Uso De Caracteres Usando "for"
Tambien Pueden Usar El Include <foreach> Que Contiene La Simplificacion De Cientos De Macros
Que Es for, while, do whileї
Sencillamente Son Solo Ciclos Que Se Usan En Muchos Casos Para Buscar Algo En Una Funcion Especifica, Muchos Utilizaron "for" y Aunque No Sabian Que Es Lo Usan Para Buscar Players En Funciones Vacias, Tambien Sirve Para Hace Repeticiones De Funciones
La Diferencia Clave Entre Ellos
La diferencia entre ellos recide en un punto clave. Cuando se utiliza un for, a diferencia de un while/do, se conoce el fin del ciclo o bucle, en cambio, cuando se utiliza un while puede conocerse el mismo o suponerce, pero no sabemos con certeza (hay excepciones) cuando terminara el ciclo, ya que en general los puntos de quiebre o salida se los define como "while(variable('<'/'>'/'!=')valor)..." es decir menor, mayor, o distinto de, entre otros.
Usando "for"
pawn Код:
forward DarVidaaTodos();
public DarVidaaTodos()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i))
{
SetPlayerHealth(i,100);
}
}
return 1;
}
pawn Код:
forward NombreDeMiFuncion(); //declaramos Una Funcion Vacia
public NombreDeMiFuncion() //Aqui Iniciamos La Funcion Vacia
{
for(new MiVariable=0;MiVariable<MAX_PLAYERS;MiVariable++)
{
//new MiVariable=0 -Aqui La Variable Es Igualada a 0 y Si No Esta Creada La Creamos
//MiVariable<MAX_PLAYERS -Aqui Ponemos La Condicion.. En Este Caso Mientras La
//Variable Sea Menor Que El Numero Mayor De Jugadores Seguira Ejecutandose
//MiVariable++ -Aqui Incrementamos La Variable Cada Vez Que El Ciclo Se Hace
//En Este Caso La Variable Empieza de 0 y Se Suma 1 Cada Vez Que Se Ejecuta El
//Ciclo y Cuando Esa Variable Llege a El Igual o Mayor a MAX_PLAYERS Se
//Terminara El Ciclo
if(IsPlayerConnected(MiVariable) && !IsPlayerNPC(MiVariable))
//Aqui Comprobamos Que El Usuario Este Conectado y Que No Sea Un Bot/Npc
{
SetPlayerHealth(MiVariable,100); //Aqui Cada Vez Que Se Ejecuta El Ciclo Le Dara
//La Vida Al Jugador Con El Id Que Tenga La Variable.. Empezara a Darle Vida
//Al Id 0 y Terminara Dandosela Hasta el 500 Uno a Uno a Todos Los Jugadores
}
}
return 1;
}
pawn Код:
forward NombreDeMiFuncion();
public NombreDeMiFuncion()
{
new MiVariable=0;
while(MiVariable<MAX_PLAYERS)
{
if(IsPlayerConnected(MiVariable) && !IsPlayerNPC(MiVariable))
{
SetPlayerHealth(MiVariable,100);
MiVariable++;
}
}
return 1;
}
pawn Код:
forward NombreDeMiFuncion();
public NombreDeMiFuncion()
{
new MiVariable=0;
do
{
if(IsPlayerConnected(MiVariable) && !IsPlayerNPC(MiVariable))
{
SetPlayerHealth(MiVariable,100);
MiVariable++;
}
}
while(MiVariable<MAX_PLAYERS)
return 1;
}
Practicamente Es Lo Mismo En Todos.. Aunque Puede Que Necesites Algunas Veces Usar Diferentes Ciclos
Tambien Pueden Usar Este Macro Para Reducir El Uso De Caracteres Usando "for"
pawn Код:
#define ForEach(%0,%1) for(new %0 = 0; %0 != %1; %0++) if(IsPlayerConnected(%0) && !IsPlayerNPC(%0))
//Ejemplo De Uso
ForEach(i, MAX_PLAYERS)//i Seria La Variable Que Este Macro Definiria Como Nueva y En 0;
//MAX_PLAYERS Es Hasta Donde Terminaria.. Solo Usar Este Macro En Players