[Ajuda] Nъmeros randфmicos
#1

Pessoal, existe uma maneira de saber qual nъmero vai ser gerado utilizando o random?

Por exemplo, se eu usar random(10); ele vai gerar um valor aleatorio de 0 а 10

daн se gerasse o valor 4, como eu poderia saber qual vai ser o prуximo valor? tem uma maneira de saber isso?
Reply
#2

Pelo random nгo hб como saber qual o prуximo valor a ser gerado.
Reply
#3

Nгo tem como saber o prуximo, mas vocк pode criar uma array e delimitar isso:

pawn Код:
new
  notRandomArray[] = { 9, 6, 3, 8, 5, 2, 0, 4, 1, 7 }, // Nъmeros de 0 a 9 arranjados aleatуriamente
  selectedNum1,
  selectedNum2
;

SelectTwoNumbers() { // Esta funзгo vai atribuir as variбveis acima dois valores da array, sendo que o primeiro й aleatуrio e o segundo й o prуximo nъmero na array.
  static index;
  index = random(sizeof notRandomArray);
  selectedNum1 = notRandomArray[index];
  selectedNum2 = (index + 1 < sizeof notRandomArray) ? notRandomArray[index + 1] : notRandomArray[0];
}

public OnGameModeInit() {
 
  SelectTwoNumbers(); // Vocк deve usar a funзгo antes de usar os nъmeros
  printf(" # %d, %d", selectedNum1, selectedNum2); // Teste vocк mesmo.
  return 1;
}
Reply
#4

Quote:
Originally Posted by Ermanhaut
Посмотреть сообщение
Nгo tem como saber o prуximo, mas vocк pode criar uma array e delimitar isso:

pawn Код:
new
  notRandomArray[] = { 9, 6, 3, 8, 5, 2, 0, 4, 1, 7 }, // Nъmeros de 0 a 9 arranjados aleatуriamente
  selectedNum1,
  selectedNum2
;

SelectTwoNumbers() { // Esta funзгo vai atribuir as variбveis acima dois valores da array, sendo que o primeiro й aleatуrio e o segundo й o prуximo nъmero na array.
  static index;
  index = random(sizeof notRandomArray);
  selectedNum1 = notRandomArray[index];
  selectedNum2 = (index + 1 < sizeof notRandomArray) ? notRandomArray[index + 1] : notRandomArray[0];
}

public OnGameModeInit() {
 
  SelectTwoNumbers(); // Vocк deve usar a funзгo antes de usar os nъmeros
  printf(" # %d, %d", selectedNum1, selectedNum2); // Teste vocк mesmo.
  return 1;
}
Pra que isso tudo cara?

pawn Код:
new Numero1;
new Numero2;

CMD:aleatorio(playerid, params[])
{
    Numero1 = random(10);
    printf("O 1° random foi: %d", Numero1);
    Numero2 = random(10);
    printf("O 2° random foi: %d", Numero2);
    return 1;
}
Reply
#5

Quote:
Originally Posted by Luiiiz
Посмотреть сообщение
Pra que isso tudo cara?

pawn Код:
new Numero1;
new Numero2;

CMD:aleatorio(playerid, params[])
{
    Numero1 = random(10);
    printf("O 1° random foi: %d", Numero1);
    Numero2 = random(10);
    printf("O 2° random foi: %d", Numero2);
    return 1;
}
Ele quer saber/definir o prуximo numero depois de usar o random.
Leia o meu cуdigo, nгo tem nada a ver com o seu.
Alйm do mais, vocк criou variбveis desnecessбrias e estб utilizando params em um comando que nгo o utiliza.
Reply
#6

Quote:
Originally Posted by Ermanhaut
Посмотреть сообщение
Nгo tem como saber o prуximo, mas vocк pode criar uma array e delimitar isso:

pawn Код:
new
  notRandomArray[] = { 9, 6, 3, 8, 5, 2, 0, 4, 1, 7 }, // Nъmeros de 0 a 9 arranjados aleatуriamente
  selectedNum1,
  selectedNum2
;

SelectTwoNumbers() { // Esta funзгo vai atribuir as variбveis acima dois valores da array, sendo que o primeiro й aleatуrio e o segundo й o prуximo nъmero na array.
  static index;
  index = random(sizeof notRandomArray);
  selectedNum1 = notRandomArray[index];
  selectedNum2 = (index + 1 < sizeof notRandomArray) ? notRandomArray[index + 1] : notRandomArray[0];
}

public OnGameModeInit() {
 
  SelectTwoNumbers(); // Vocк deve usar a funзгo antes de usar os nъmeros
  printf(" # %d, %d", selectedNum1, selectedNum2); // Teste vocк mesmo.
  return 1;
}
Cуdigo interessante.
Reply
#7

Quote:
Originally Posted by Ermanhaut
Посмотреть сообщение
Ele quer saber/definir o prуximo numero depois de usar o random.
Leia o meu cуdigo, nгo tem nada a ver com o seu.
Alйm do mais, vocк criou variбveis desnecessбrias e estб utilizando params em um comando que nгo o utiliza.
Utilizo y_commands, nгo zcmd.
y_commands й de obrigatуrio o "params".
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)