Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Random;
- import java.util.Scanner;
- public class TheFightGameV2 {
- // Declaration des constantes:
- public final static int JOUEUR = 0;
- public final static int ORDI = 1;
- public final static int POT = 2;
- public final static int[] VALEUR_PIECES = {1, 5, 10, 25};
- public final static int VALEUR_CHOIX_MIN = 1;
- public final static int VALEUR_CHOIX_MAX = 4;
- public final static int VALEUR_CHOIX_QUITTER = 5;
- public final static String MSG_ERREUR_VALEUR_CHOISIE = "Erreur!! " +
- "Merci de choisir un nombre entre: 1 et 5";
- // Declaration du tableau 2D à l'etat initial:
- public static int[][] tab = {{4, 3, 2, 1},
- {4, 3, 2, 1},
- {0, 0, 0, 0}};
- // Declaration d'un tableau Valeur du pot:
- public static int[] valeurPot = {tab[POT][0] * VALEUR_PIECES[0], tab[POT][1] * VALEUR_PIECES[1],
- tab[POT][2] * VALEUR_PIECES[2], tab[POT][3] * VALEUR_PIECES[3]};
- // Declaration des variables:
- static int choixJoueur = 0;
- static int choixOrdi = 0;
- /**
- * Message invitant le joueur a choisir un nombre dans la liste
- */
- public static void messageJouer() {
- // inviter l'utlisateur a faire son choix"
- System.out.println();
- System.out.println(" Faites votre choix");
- System.out.println(" ------------------");
- System.out.println(" 1: piece de 1 sou");
- System.out.println(" 2: piece de 5 sous ");
- System.out.println(" 3: piece de 10 sous ");
- System.out.println(" 4: piece de 25 sous");
- System.out.println(" 5: Abandonner la partie");
- System.out.println();
- System.out.print(" Entrez votre choix : ");
- }
- /**
- * Message qui affiche l'etat initial du jeu
- */
- public static void afficherEtatJoueurs() {
- // Declaration du tableau a l etat initial:
- // Affichage de l'etat du joueur:
- System.out.println("Joueur");
- System.out.println(" 1 sou : " + tab[JOUEUR][0]);
- System.out.println(" 5 sous : " + tab[JOUEUR][1]);
- System.out.println(" 10 sous : " + tab[JOUEUR][2]);
- System.out.println(" 25 sous : " + tab[JOUEUR][3]);
- // Affichage de l'etat du Pot:
- System.out.println("Pot");
- System.out.println(" 1 sou : " + tab[POT][0]);
- System.out.println(" 5 sous : " + tab[POT][1]);
- System.out.println(" 10 sous : " + tab[POT][2]);
- System.out.println(" 25 sous : " + tab[POT][3]);
- // Affichage de l' 'etat de l ordi:
- System.out.println("Ordinateur");
- System.out.println(" 1 sou : " + tab[ORDI][0]);
- System.out.println(" 5 sous : " + tab[ORDI][1]);
- System.out.println(" 10 sous : " + tab[ORDI][2]);
- System.out.println(" 25 sous : " + tab[ORDI][3]);
- }
- /**
- * Methode qui valide si le joueur a assez de pieces pour jouer
- */
- public static void validerNombrePieces(int[] tab, int choix) {
- if (tab[choix] == 0) {
- System.out.println(" Tu n'as plus de pieces de ce type! " +
- "Essaye une autre peice");
- }
- }
- /* Methode qui calcule la somme d'un tableau d'entier
- */
- public static int sommeTableau(int tableau[]) {
- int i = 0;
- int somme = 0;
- for (i = 0; i < tableau.length; i++) {
- somme = somme + tableau[i];
- }
- return somme;
- }
- // Methode qui retourne un entier aleatoire entre 1 et 5:
- public static int getRandomNumberInRange() {
- Random r = new Random();
- return r.nextInt(4) + 1;
- }
- /**
- * Parcourir le tableau 2D et afficher son contenu
- *
- * @param tab, le tableau a afficher
- */
- public static void afficherTab2D(int tab[][]) {
- for (int i = 0; i < tab.length; i++) {
- for (int j = 0; j < tab[i].length; j++) {
- System.out.printf("%-4d", tab[i][j]);
- }
- System.out.println();
- }
- }
- public static void main(String[] args) {
- // Conditions initiales pour commencer le jeux
- // while(sommeTableau(tab[JOUEUR]) != 0 && sommeTableau(tab[ORDI]) != 0 ){
- // Afficher l'etet initial du tableau 2D:
- afficherTab2D(tab);
- // inviter le Joueur à choisir une piece valide
- messageJouer();
- Scanner clavier = new Scanner(System.in);
- choixJoueur = clavier.nextInt();
- System.out.println(" vous avez choisi : " + choixJoueur);
- tab[JOUEUR][choixJoueur - 1] = tab[JOUEUR][choixJoueur - 1] - 1;
- tab[POT][choixJoueur - 1] = tab[POT][choixJoueur - 1] + 1;
- //afficherTab2D(tab);
- switch (choixJoueur) {
- case 4:
- if (valeurPot[2] >= 20) { //il y a au moins 2 pieces de 10c dans le pot
- if (valeurPot[0] > 4) { // il y a au moins 5 pieces de 1c dans le pot
- tab[JOUEUR][2] = tab[JOUEUR][2] + 2;
- tab[POT][2] = tab[POT][2] - 2; // on va prendre 20c du pot et la mettre dans le tas du joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + 4;
- tab[POT][0] = tab[POT][0] - 4; // on va prendre 4c du pot et la mettre dans le tas du joueur
- } else {
- tab[JOUEUR][2] = tab[JOUEUR][2] + 2;
- tab[POT][2] = tab[POT][2] - 2; // on va prendre 20c du pot et la mettre dans le tas du joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0]; // on va prendre tous les 1c
- // du pot et la mettre dans le tas du joueur
- }
- } else if (valeurPot[2] == 10) { //il y a 1 pieces de 10c dans le pot
- tab[JOUEUR][2] = tab[JOUEUR][2] + 1;
- tab[POT][2] = tab[POT][2] - 1; // on va prendre 10c du pot et la mettre dans le tas du joueur
- if (valeurPot[1] > 5) { //il y a au moins 2 pieces de 5c dans le pot
- if (valeurPot[0] > 4) { // il y a au moins 5 pieces de 1c dans le pot
- tab[JOUEUR][1] = tab[JOUEUR][1] + 2;
- tab[POT][1] = tab[POT][1] - 2; // on va prendre 2 x 5c du pot et les mettre dans le tas du joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + 4;
- tab[POT][0] = tab[POT][0] - 4; // on va prendre 4c du pot et la mettre dans le tas du joueur
- } else {
- tab[JOUEUR][1] = tab[JOUEUR][1] + 2;
- tab[POT][1] = tab[POT][1] - 2; // on va prendre 2 x 5c du pot et les mettre dans le tas du joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0]; // on va prendre tous les 1c
- // du pot et la mettre dans le tas du joueur
- }
- } else { //il y a au maximum 1 piece de 5c dans le pot
- tab[JOUEUR][1] = tab[JOUEUR][1] + tab[POT][1];
- tab[POT][1] = tab[POT][1] - tab[POT][1]; // on ajoute tout le contenu du pot au joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- } else {
- if (valeurPot[1] > 10) { //il y a au moins 3 pieces de 5c dans le pot
- tab[JOUEUR][1] = tab[JOUEUR][1] + 3;
- tab[POT][1] = tab[POT][1] - 3; // on va prendre 3 x 5c du pot et les mettre dans le tas du joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- } else {
- tab[JOUEUR][2] = tab[JOUEUR][2] + tab[POT][1];
- tab[POT][1] = tab[POT][1] - tab[POT][1]; // on ajoute tout le contenu du pot au joueur
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- }
- case 3:
- if (valeurPot[1] >= 5) { //il y a au moins 1 piece de 5c dans le pot
- tab[JOUEUR][1] = tab[JOUEUR][1] + 1;
- tab[POT][1] = tab[POT][1] - 1;
- if (valeurPot[0] > 4) { // il y a au moins 5 pieces de 1c dans le pot
- tab[JOUEUR][0] = tab[JOUEUR][0] + 4;
- tab[POT][0] = tab[POT][0] - 4; // on va prendre 4c du pot et la mettre dans le tas du joueur
- } else {
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- } else {
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- case 2:
- if (valeurPot[0] >= 5) { //il y a au moins 5 piece de 1c dans le pot
- tab[JOUEUR][0] = tab[JOUEUR][0] + 4;// on va prendre 4c du pot et la mettre dans le tas du joueur
- tab[POT][0] = tab[POT][0] - 4;
- } else {
- tab[JOUEUR][0] = tab[JOUEUR][0] + tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- }
- System.out.println("Voici les resultats: ");
- System.out.println();
- afficherTab2D(tab);
- System.out.println();
- System.out.println(" L'ordi joue");
- // inviter l'ordi à choisir une piece valide
- choixOrdi = getRandomNumberInRange();
- System.out.println(" L'ordi a choisi : " + choixOrdi);
- tab[ORDI][choixOrdi - 1] = tab[ORDI][choixOrdi - 1] - 1;
- tab[POT][choixOrdi - 1] = tab[POT][choixOrdi - 1] + 1;
- switch (choixOrdi) {
- case 4:
- if (valeurPot[2] >= 20) { //il y a au moins 2 pieces de 10c dans le pot
- if (valeurPot[0] > 4) { // il y a au moins 5 pieces de 1c dans le pot
- tab[ORDI][2] = tab[ORDI][2] + 2;
- tab[POT][2] = tab[POT][2] - 2; // on va prendre 20c du pot et la mettre dans le tas du joueur
- tab[ORDI][0] = tab[ORDI][0] + 4;
- tab[POT][0] = tab[POT][0] - 4; // on va prendre 4c du pot et la mettre dans le tas du joueur
- } else {
- tab[ORDI][2] = tab[ORDI][2] + 2;
- tab[POT][2] = tab[POT][2] - 2; // on va prendre 20c du pot et la mettre dans le tas du joueur
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0]; // on va prendre tous les 1c du pot et la mettre dans le tas du joueur
- }
- } else if (valeurPot[2] == 10) { //il y a 1 pieces de 10c dans le pot
- tab[ORDI][2] = tab[ORDI][2] + 1;
- tab[POT][2] = tab[POT][2] - 1; // on va prendre 10c du pot et la mettre dans le tas du joueur
- if (valeurPot[1] > 5) { //il y a au moins 2 pieces de 5c dans le pot
- if (valeurPot[0] > 4) { // il y a au moins 5 pieces de 1c dans le pot
- tab[ORDI][1] = tab[ORDI][1] + 2;
- tab[POT][1] = tab[POT][1] - 2; // on va prendre 2 x 5c du pot et les mettre dans le tas du joueur
- tab[ORDI][0] = tab[ORDI][0] + 4;
- tab[POT][0] = tab[POT][0] - 4; // on va prendre 4c du pot et la mettre dans le tas du joueur
- } else {
- tab[ORDI][1] = tab[ORDI][1] + 2;
- tab[POT][1] = tab[POT][1] - 2; // on va prendre 2 x 5c du pot et les mettre dans le tas du joueur
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0]; // on va prendre tous les 1c
- // du pot et la mettre dans le tas du joueur
- }
- } else { //il y a au maximum 1 piece de 5c dans le pot
- tab[ORDI][1] = tab[ORDI][1] + tab[POT][1];
- tab[POT][1] = tab[POT][1] - tab[POT][1]; // on ajoute tout le contenu du pot au joueur
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- } else {
- if (valeurPot[1] > 10) { //il y a au moins 3 pieces de 5c dans le pot
- tab[ORDI][1] = tab[ORDI][1] + 3;
- tab[POT][1] = tab[POT][1] - 3; // on va prendre 3 x 5c du pot et les mettre dans le tas du joueur
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- } else {
- tab[ORDI][2] = tab[ORDI][2] + tab[POT][1];
- tab[POT][1] = tab[POT][1] - tab[POT][1]; // on ajoute tout le contenu du pot au joueur
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0];
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- }
- case 3:
- if (valeurPot[1] >= 5) { //il y a au moins 1 piece de 5c dans le pot
- tab[ORDI][1] = tab[ORDI][1] + 1;
- tab[POT][1] = tab[POT][1] - 1;
- if (valeurPot[0] > 4) { // il y a au moins 5 pieces de 1c dans le pot
- tab[ORDI][0] = tab[ORDI][0] + 4;
- tab[POT][0] = tab[POT][0] - 4; // on va prendre 4c du pot et la mettre dans le tas du joueur
- } else {
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- } else {
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- case 2:
- if (valeurPot[0] >= 5) { //il y a au moins 5 piece de 1c dans le pot
- tab[ORDI][0] = tab[ORDI][0] + 4;// on va prendre 4c du pot et la mettre dans le tas du joueur
- tab[POT][0] = tab[POT][0] - 4;
- } else {
- tab[ORDI][0] = tab[ORDI][0] + tab[POT][0]; // on ajoute tout le contenu du pot au joueur
- tab[POT][0] = tab[POT][0] - tab[POT][0];
- }
- System.out.println("Voici les resultats: ");
- System.out.println();
- afficherTab2D(tab);
- System.out.println();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement