Génération aléatoire au sein d'un tableau

Génération aléatoire au sein d'un tableau - Java - Programmation

Marsh Posté le 10-06-2008 à 18:13:37    

Bonsoir,
 
Un nouveau problème vient me bloquer sur la réalisation de mon projet et j'aurais besoin de vos lumières.
 
J'ai un tableau de 20*20 et dans certaines cases j'aurais des personnages qui devront se déplacer aléatoirement dans un carré 3*3 par pas de 1 aléatoirement.
C'est a dire , exemple :
Polo se trouve en case [10][10], il peut aussi bien se retrouver en case [9][9] [9][10] [9][11] [10][9] [10][11] [11][9] [11][10] [11][11] au prochain tour.
Mon problème c'est que je ne sais pas du tout gérer un nombre aléatoire NEGATIF ??
 
Et préférant anticiper, y'a t il un moyen plus simple que des IF pour éviter que lorsque ce personnage se trouve près des bords du tableau, il se retrouve à l'extérieur ?
 
Merci d'avance pour vos conseils :)
 
Edit1 :
 
Je viens de faire ce code, fonctionnel, mais voyez vous quelques choses qui pourrait me procurer des surprises non souhaitées ?
 

public int [] alea(){
  int [] TabAlea;
  TabAlea = new int [2];
  int alea1 = 0;
  int alea2 = 0;
  alea1 =(int)( Math.random()*2 ) ;
  alea2 =(int)( Math.random()*2 ) ;
  if (alea1 == 0 && alea2 == 0)
  {
   alea1 = alea1 - 1 ;
  }
  TabAlea[1]=alea1;
  TabAlea[2]=alea2;
  //System.out.println(alea1+" -- "+alea2);
  return TabAlea;
 }


 
 
Edit2:
J'ai trouver la surprise non souhaité, et j'avoue que je sèche un peu pour la résoudre,
Avez vous une idée à me proposer pour pour éviter que lorsque ce personnage se trouve près des bords du tableau, il se retrouve à l'extérieur ?
 
 
Merci


Message édité par lupin3 le 10-06-2008 à 18:34:59
Reply

Marsh Posté le 10-06-2008 à 18:13:37   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed