Partage
  • Partager sur Facebook
  • Partager sur Twitter

Placer des bateaux aléatoirement JAVA

    4 décembre 2018 à 10:13:44

    Bonjour,

    J'ai comme projet de faire une bataille navale en JAVA, je suis amateur en JAVA (depuis septembre 2018). Pour l'instant j'ai réussi a faire ma grille, en y ajoutant les coordonnées verticales et horizontales au dessus et sur le coté de la grille. Maintenant j'aimerais pouvoir y placer des "bateaux" aléatoirement mais je n'ai aucune idée de comment le faire.

    Je sais qu'il faut des coordonnées x,y , une longueur, dire si c'est vertical ou horizontal et ne pas les faire se chevaucher. Mais je suis totalement perdu dans l’exécution de cette partie. J'espère que vous pourrez m'aider.

    Merci d'avance.

    • Partager sur Facebook
    • Partager sur Twitter
      4 décembre 2018 à 11:39:00

      Tu prends une valeur x aléatoire, une valeur y aléatoire, tu choisis aléatoirement si c'est tu mets ton bateau verticalement ou horizontalement. (Pour prendre des valeurs aléatoire : Math.random();)

      Tu poses ton bateau sur la case (x,y) en l'orientant correctement. Sauf qu'a ce moment là, il faut que tu vérifies si toutes les cases que ton bateau va occuper sont libre. Si ce n'est pas le cas, tu recommences avec de nouvelles valeurs.

      Donc pour ça, il te faut une méthode qui te dira si une case est libre à partir de ta grille, de la position de tes bateaux, et d'une case (x;y)

      Je dis ça à l'arrache, n'hésite pas à faire un 1er jet voir ce que ca donne, on verra après pour l'optimisation (genre quelle sont mes valeurs de (x,y) que sont possible à partir de la longueur de mon bateau et de son orientation.)

      -
      Edité par Tiffado 4 décembre 2018 à 11:40:38

      • Partager sur Facebook
      • Partager sur Twitter

      Placer des bateaux aléatoirement JAVA

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown