CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Projet en java

Atlantax
Atlantax
Niveau 1
15 février 2021 à 14:34:50

Bonjour,
Je dois rendre un projet de programmation en java. Problème je comprend rein a ce langage. Je voulais savoir si vous pouvez me le faire .

Cordialement

le sujet :

Vous devez modéliser le projet par un diagramme de classes UML à partir des structures de
données initialement créées en langage C. Vous compléterez le modèle en associant les
fonctions définies en C aux classes correspondantes. Aide :
1. une fonction C d’initialisation devient un constructeur
2. une fonction C qui prend en paramètre une structure devient une méthode d’objet de la
classe correspondante à la structure
07/02/21 D:\Dropbox\2020-2021\1A-POO1\PRJ\Projet_POO1_2020_2021_Version_1.odt 1/7
3. une fonction C qui retourne une structure devient une méthode d’objet de la classe
correspondante à la structure.
4. La classe Plateau sera une classe statique qui contient les méthodes statiques d’affichage
des éléments. Le modèle est fourni, voir plus loin.
5. Prévoir tous les observateurs / modificateurs possibles.

4. CLASSES VAISSEAU / ALIENS ET PLATEAU (SEMAINE 12)
Vous allez créer les tests et validations des classe Vaisseau, Aliens et Plateau en accord avec les
modèles UML fournis.
Le non respect du nommage des classes de tests et du modèle UML entraînera l’absence de
correction de la part de l’enseignant et vous n’aurez aucun point à cette partie.
Toutes vos classes Java doivent être rangées dans un package nommé V1, puis V2

4.1. CLASSE VAISSEAU
Ecrire un programme TestVaisseau qui permet de tester intégralement votre classe Vaisseau
afin de produire la sortie suivante :
Test de la classe Vaisseau PROF 2020-2021
Création un vaisseau + affichage sur un plateau de largeur 5
VAISSEAU pos:2 célérité : 1 typetir : s tireEffectué : false
Boucle à droite d'un vaisseau + affichage
VAISSEAU pos:3 célérité : 1 typetir : s tireEffectué : false
VAISSEAU pos:4 célérité : 1 typetir : s tireEffectué : false
VAISSEAU pos:4 célérité : 1 typetir : s tireEffectué : false
Boucle à gauche d'un vaisseau + affichage
VAISSEAU pos:3 célérité : 1 typetir : s tireEffectué : false
VAISSEAU pos:2 célérité : 1 typetir : s tireEffectué : false
VAISSEAU pos:1 célérité : 1 typetir : s tireEffectué : false
VAISSEAU pos:0 célérité : 1 typetir : s tireEffectué : false
VAISSEAU pos:0 célérité : 1 typetir : s tireEffectué : false
Tir d'un vaisseau + affichage
VAISSEAU pos:0 célérité : 1 typetir : s tireEffectué : true
+ Tester tous vos observateurs / Modificateurs
07/02/21 D:\Dropbox\2020-2021\1A-POO1\PRJ\Projet_POO1_2020_2021_Version_1.odt 2/7

4.2. CLASSE ALIEN
4.2.1. TESTS D’UN ALIEN
Ecrire un programme TestAlien qui permet de tester exhaustivement votre classe pour un
Alien afin de produire la sortie suivante :
Test de la classe Alien PROF 2020-2021
Test Affichage 1 seul alien
Alien PosX=0 PosY=0 Vit=1 Pts Vie=1
Création affichage d'une liste de 5 aliens centrés sur un plateau de largeur 7 de hauteur 5
Test Affichage Liste aliens
Alien PosX=1 PosY=0 Vit=1 Pts Vie=1
Alien PosX=2 PosY=0 Vit=1 Pts Vie=1
Alien PosX=3 PosY=0 Vit=1 Pts Vie=1
Alien PosX=4 PosY=0 Vit=1 Pts Vie=1
Alien PosX=5 PosY=0 Vit=1 Pts Vie=1
Test Déplacement + Affichage Liste aliens
Alien PosX=2 PosY=0 Vit=1 Pts Vie=1
Alien PosX=3 PosY=0 Vit=1 Pts Vie=1
Alien PosX=4 PosY=0 Vit=1 Pts Vie=1
Alien PosX=5 PosY=0 Vit=1 Pts Vie=1
Alien PosX=6 PosY=0 Vit=1 Pts Vie=1
Test Déplacement d'une ligne d'un coup + Affichage Liste aliens
Alien PosX=2 PosY=1 Vit=1 Pts Vie=1
Alien PosX=3 PosY=1 Vit=1 Pts Vie=1
Alien PosX=4 PosY=1 Vit=1 Pts Vie=1
Alien PosX=5 PosY=1 Vit=1 Pts Vie=1
Alien PosX=6 PosY=1 Vit=1 Pts Vie=1
Test Boucle Déplacement + Affichage Liste aliens
Déplacement N°1
Alien PosX=0 PosY=2 Vit=1 Pts Vie=1
Alien PosX=1 PosY=2 Vit=1 Pts Vie=1
Alien PosX=2 PosY=2 Vit=1 Pts Vie=1
Alien PosX=3 PosY=2 Vit=1 Pts Vie=1
Alien PosX=4 PosY=2 Vit=1 Pts Vie=1
Déplacement N°2
Alien PosX=1 PosY=2 Vit=1 Pts Vie=1
Alien PosX=2 PosY=2 Vit=1 Pts Vie=1
Alien PosX=3 PosY=2 Vit=1 Pts Vie=1
Alien PosX=4 PosY=2 Vit=1 Pts Vie=1
Alien PosX=5 PosY=2 Vit=1 Pts Vie=1
Déplacement N°3
Alien PosX=2 PosY=2 Vit=1 Pts Vie=1
Alien PosX=3 PosY=2 Vit=1 Pts Vie=1
Alien PosX=4 PosY=2 Vit=1 Pts Vie=1
Alien PosX=5 PosY=2 Vit=1 Pts Vie=1
Alien PosX=6 PosY=2 Vit=1 Pts Vie=1
Déplacement N°4
Alien PosX=0 PosY=3 Vit=1 Pts Vie=1
Alien PosX=1 PosY=3 Vit=1 Pts Vie=1
Alien PosX=2 PosY=3 Vit=1 Pts Vie=1
Alien PosX=3 PosY=3 Vit=1 Pts Vie=1
Alien PosX=4 PosY=3 Vit=1 Pts Vie=1
Déplacement N°5
Alien PosX=1 PosY=3 Vit=1 Pts Vie=1
Alien PosX=2 PosY=3 Vit=1 Pts Vie=1
Alien PosX=3 PosY=3 Vit=1 Pts Vie=1
Alien PosX=4 PosY=3 Vit=1 Pts Vie=1
Alien PosX=5 PosY=3 Vit=1 Pts Vie=1
Déplacement N°6
Alien PosX=2 PosY=3 Vit=1 Pts Vie=1
Alien PosX=3 PosY=3 Vit=1 Pts Vie=1
07/02/21 D:\Dropbox\2020-2021\1A-POO1\PRJ\Projet_POO1_2020_2021_Version_1.odt 3/7
Alien PosX=4 PosY=3 Vit=1 Pts Vie=1
Alien PosX=5 PosY=3 Vit=1 Pts Vie=1
Alien PosX=6 PosY=3 Vit=1 Pts Vie=1
Déplacement N°7
Alien PosX=0 PosY=4 Vit=1 Pts Vie=1
Alien PosX=1 PosY=4 Vit=1 Pts Vie=1
Alien PosX=2 PosY=4 Vit=1 Pts Vie=1
Alien PosX=3 PosY=4 Vit=1 Pts Vie=1
Alien PosX=4 PosY=4 Vit=1 Pts Vie=1
Déplacement N°8
Alien PosX=1 PosY=4 Vit=1 Pts Vie=1
Alien PosX=2 PosY=4 Vit=1 Pts Vie=1
Alien PosX=3 PosY=4 Vit=1 Pts Vie=1
Alien PosX=4 PosY=4 Vit=1 Pts Vie=1
Alien PosX=5 PosY=4 Vit=1 Pts Vie=1
Déplacement N°9
Alien PosX=2 PosY=4 Vit=1 Pts Vie=1
Alien PosX=3 PosY=4 Vit=1 Pts Vie=1
Alien PosX=4 PosY=4 Vit=1 Pts Vie=1
Alien PosX=5 PosY=4 Vit=1 Pts Vie=1
Alien PosX=6 PosY=4 Vit=1 Pts Vie=1
Déplacement N°10 Ne dépasse pas
Alien PosX=2 PosY=4 Vit=1 Pts Vie=1
Alien PosX=3 PosY=4 Vit=1 Pts Vie=1
Alien PosX=4 PosY=4 Vit=1 Pts Vie=1
Alien PosX=5 PosY=4 Vit=1 Pts Vie=1
Alien PosX=6 PosY=4 Vit=1 Pts Vie=1
07/02/21 D:\Dropbox\2020-2021\1A-POO1\PRJ\Projet_POO1_2020_2021_Version_1.odt 4/7

4.3. CLASSE PLATEAU
4.3.1. CRÉATION DE LA PLATEAU
Afin d’anticiper la mise en place d’une option graphique pour le jeu, la Plateau sera une classe
statique dont le diagramme de classe UML est le suivant :
classe Plateau
Attributs
- statique Entier sLargeur=10;
- statique Entier sHauteur=10;
Méthodes
+ statique void afficherPlateau(Vaisseau v, List<Alien> listeAliens)
- statique void afficherLigne(int ligne, Vaisseau vaisseau, List<Alien> listeAliens)
permet d’afficher une ligne avec le Vaisseau (H), les Aliens (Z), le tir ou un vide ( )
Observateurs
+ statique Entier getHAUTEUR()
+ statique Entier getLARGEUR()

4.3.2. TEST D U PLATEAU
Ecrire un programme TestPlateau qui permet de tester la création d’un Vaisseau, d’une liste de
Aliens et leurs placements sur le Plateau. Produire la sortie suivante :
Création et affichage d'un plateau 20 de hauteur 10
====================
@@@@@@@@@@

#
====================
07/02/21 D:\Dropbox\2020-2021\1A-POO1\PRJ\Projet_POO1_2020_2021_Version_1.odt 5/7
5. VERSION 1 (SEMAINE 1 2 )
5.1. RAPPEL
Dans la version 1.0 du jeu, vous allez gérer les déplacements du Vaisseau et des Aliens. Le
Vaisseau se déplace sur sa ligne et il peut tirer. Il gagne s’il touche tous les aliens. Rappel, un
alien se déplace vers la droite du plateau, sauf si l’alien le plus à droite touche le bord droit du
plateau. Dans ce dernier cas, il faut alors faire descendre d’une ligne les aliens.
Si un alien rencontre le vaisseau celui ci a perdu.

5.2. PROGRAMME DE TEST (LANCEURNOMV1.JAVA )
Ce programme de test mettra en œuvre l’initialisation des éléments (Vaisseau, Aliens et Plateau)
et la boucle de jeu qui s’arrêtera pour les deux conditions énoncées dans le rappel.
La méthode suivante permet de récupérer au clavier le choix de l’utilisateur par scrutation
/**
* Méthode fournie qui fonctionne par scrutation du clavier (non bloquant)
* @param clavier
* @return le caractère saisi
*/
public char recupererAction(BufferedReader clavier) {
char ch = 'x';
try {
if (clavier.ready()) { // scrutation
ch = clavier.readLine().charAt(0);
}
} catch (IOException e) {
e.printStackTrace();
}
return ch;
}
Vous pourrez lire dans votre boucle de jeu s’il y a une saisie ainsi :
char action = recupererAction(clavier);// scrutation
Pour cela le clavier devra être construit en utilisant la classe BufferedReader
clavier = new BufferedReader(new InputStreamReader(System.in));
Vous devrez obligatoirement présenter cette version 1 lors de la soutenance (dans le package
V1) et en garder une archive à déposer sur l’ENT (sans aucune trace de la version 2 à venir)
07/02/21 D:\Dropbox\2020-2021\1A-POO1\PRJ\Projet_POO1_2020_2021_Version_1.odt 6/7

5.3. AIDE : CLASSE LOG
Afin d’étudier le comportement de votre jeu, vous pouvez utiliser la classe Log fournie qui
permet d’enregistrer dans un fichier (logs.txt) les messages que vous souhaitez (ce qui peut
éviter de polluer votre affichage et passer outre la taille limite de la console). Vous avez aussi et
surtout le mode Debug d’Eclipse qui permet d’analyser le comportement du programme.
import java.io.FileWriter;
import java.io.IOException;
public class Log {
public static FileWriter fichierLog=null;
public static void createLog() {
try {
fichierLog = new FileWriter("logs.txt");
} catch (IOException e) {
e.printStackTrace();
}
}
public static void message(String message) {
try {
fichierLog.append(message);
} catch (IOException e) {
e.printStackTrace();
}
}
public static void close() {
try {
fichierLog.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
1. C’est une classe statique, il faut appeler en premier dans le main : Log.createLog();
2. Puis utiliser : Log.message(); depuis n’importe quelle classe du projet
3. Enfin, fermer le fichier à la fin du programme Log.close() ;

cybevil
cybevil
Niveau 27
15 février 2021 à 14:51:04

Je voulais savoir si vous pouvez me le faire

Oui bien sûr, comment refuser...

createurdechaos
createurdechaos
Niveau 10
15 février 2021 à 14:55:15

C'est pas compliqué pour quelqu'un qui fait du java, tu devrais pas galérer à trouver un étudiant qui te le fait pour 100e (pour beaucoup d'école c'est actuellement "l'entre semestre", profites en)

Mais personne va te le faire gratuitement

Message édité le 15 février 2021 à 14:59:09 par createurdechaos
ethyl-acetate
ethyl-acetate
Niveau 10
15 février 2021 à 15:13:13

On peut supprimer ces topics SVP

Seelker
Seelker
Niveau 5
15 février 2021 à 16:10:00

Il n'a même pas donné la deadline.

Le non respect du nommage des classes de tests et du modèle UML entraînera l’absence de

correction de la part de l’enseignant et vous n’aurez aucun point à cette partie.

:rire:

Non.

Bunyan
Bunyan
Niveau 17
15 février 2021 à 19:50:15

T'aider : oui.
Bosser à ta place : non.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment