Nantes Université

Skip to content
Extraits de code Groupes Projets
Valider 62b4da9c rédigé par fmoinard's avatar fmoinard
Parcourir les fichiers
parents ab49ea71 45c3da5e
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!4Master
.idea
target
\ No newline at end of file
......@@ -6,6 +6,7 @@
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="designpatternproject" />
<module name="Design Pattern Project" />
</profile>
</annotationProcessing>
......
# Design Pattern Project
import java.sql.Array;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Game {
......@@ -7,52 +10,39 @@ public class Game {
EtatArret etatArret = new EtatArret();
etatArret.partie(justePrixPartie);
List<Produit> tabProduit = new ArrayList<Produit>();
System.out.println(justePrixPartie.getEtat().toString());
Produit S21 = new TelephoneBuilder().setOs("Android10").setProcesseur("Intel").setBatterie(
//Création des 4 produits
Produit S21 = new TelephoneBuilder().setNom("S21").setOs("Android10").setProcesseur("Intel").setBatterie(
4000).setEcran(6.20).setMarque("Samsung").setPrix(700).getProduit();
Produit iPhone13 = new TelephoneBuilder().setOs("iOS15").setProcesseur("Apple").setBatterie(
Produit iPhone13 = new TelephoneBuilder().setNom("iPhone13").setOs("iOS15").setProcesseur("Apple").setBatterie(
3227).setEcran(6.10).setMarque("Apple").setPrix(950).getProduit();
Produit SurfacePro7 = new TabletteBuilder().setOs("Windows11").setProcesseur("Intel").setBatterie(
Produit SurfacePro7 = new TabletteBuilder().setNom("SurfacePro7").setOs("Windows11").setProcesseur("Intel").setBatterie(
5702).setEcran(13.00).setMarque("Microsoft").setPrix(1200).getProduit();
Produit iPad = new TelephoneBuilder().setOs("iPadOS15").setProcesseur("Apple").setBatterie(
Produit iPad = new TelephoneBuilder().setNom("iPad").setOs("iPadOS15").setProcesseur("Apple").setBatterie(
8686).setEcran(10.2).setMarque("Apple").setPrix(500).getProduit();
//Ajout des produit dans la liste de jeu
tabProduit.add(S21);
tabProduit.add(iPhone13);
tabProduit.add(SurfacePro7);
tabProduit.add(iPad);
int justeprix;
System.out.println("Bienvenue dans la boutique où vous pouvez remporter vos produits !");
System.out.println("Pour les remporter, c'est simple, il vous suffit de deviner les prix des produits \n");
System.out.println("Choisissez la catégorie de produits que vous souhaitez deviner : ");
System.out.println("Tapez '1' si vous souhaitez deviner la catégorie " + S21.getTypeProduit());
System.out.println("Tapez '2' si vous souhaitez deviner la catégorie " + SurfacePro7.getTypeProduit());
Scanner scan = new Scanner(System.in);
int choix = scan.nextInt();
if (choix == 1) {
System.out.println("Vous avez choisi les téléphones, voici les téléphones que vous pouvez deviner :");
System.out.println("Tapez '1' si vous souhaitez deviner le S21");
System.out.println("Tapez '2' si vous souhaitez deviner l'iPhone13");
choix = scan.nextInt();
if (choix == 1) {
justeprix = S21.getPrix();
jouerPartie(justeprix, justePrixPartie);
} else if (choix == 2) {
justeprix = iPhone13.getPrix();
jouerPartie(justeprix, justePrixPartie);
}
} else if (choix == 2) {
System.out.println("Vous avez choisi les tablettes, voici les téléphones que vous pouvez deviner :");
System.out.println("Tapez '1' si vous souhaitez deviner la Surface Pro 7");
System.out.println("Tapez '2' si vous souhaitez deviner l'iPad");
choix = scan.nextInt();
if (choix == 1) {
justeprix = SurfacePro7.getPrix();
jouerPartie(justeprix, justePrixPartie);
} else if (choix == 2) {
justeprix = iPad.getPrix();
jouerPartie(justeprix, justePrixPartie);
}
//Pour chaque produit dans la liste lancer une partie
for (Produit produit : tabProduit) {
System.out.println("Vous jouer pour le produit : "+produit.getNom());
justeprix = produit.getPrix();
jouerPartie(justeprix, justePrixPartie);
}
}
......@@ -74,7 +64,7 @@ public class Game {
prix = deviner.nextInt();
if (justeprix > prix) {
System.out.println("C'est plus !");
} else {
} else if (justeprix < prix){
System.out.println("C'est moins !");
}
essai ++;
......
public interface IProduitBuilder {
IProduitBuilder setNom(String nom);
IProduitBuilder setOs(String os);
IProduitBuilder setProcesseur(String processeur);
IProduitBuilder setBatterie(int batterie);
......
public class Produit {
private String nom;
private String os;
private String processeur;
private int batterie;
......@@ -7,8 +8,9 @@ public class Produit {
private int prix;
private String typeProduit;
public Produit(String os, String processeur, int batterie, double ecran, String marque, int prix, String typeProduit) {
public Produit(String nom, String os, String processeur, int batterie, double ecran, String marque, int prix, String typeProduit) {
super();
this.nom = nom;
this.os = os;
this.processeur = processeur;
this.batterie = batterie;
......@@ -18,11 +20,80 @@ public class Produit {
this.typeProduit = typeProduit;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getOs() {
return os;
}
public void setOs(String os) {
this.os = os;
}
public String getProcesseur() {
return processeur;
}
public void setProcesseur(String processeur) {
this.processeur = processeur;
}
public int getBatterie() {
return batterie;
}
public void setBatterie(int batterie) {
this.batterie = batterie;
}
public double getEcran() {
return ecran;
}
public void setEcran(double ecran) {
this.ecran = ecran;
}
public String getMarque() {
return marque;
}
public void setMarque(String marque) {
this.marque = marque;
}
public int getPrix() {
return prix;
}
public void setPrix(int prix) {
this.prix = prix;
}
public String getTypeProduit() {
return typeProduit;
}
public void setTypeProduit(String typeProduit) {
this.typeProduit = typeProduit;
}
@Override
public String toString() {
return "Produit{" +
"os='" + os + '\'' +
", processeur='" + processeur + '\'' +
", batterie=" + batterie +
", ecran=" + ecran +
", marque='" + marque + '\'' +
", prix=" + prix +
", typeProduit='" + typeProduit + '\'' +
'}';
}
}
public class TabletteBuilder implements IProduitBuilder{
String nom = "";
String os = "";
String processeur = "";
int batterie = 0;
......@@ -7,6 +8,12 @@ public class TabletteBuilder implements IProduitBuilder{
int prix = 0;
String typeProduit = "Tablette";
@Override
public IProduitBuilder setNom(String nom) {
this.nom = nom;
return this;
}
@Override
public IProduitBuilder setOs(String os) {
this.os = os;
......@@ -45,6 +52,6 @@ public class TabletteBuilder implements IProduitBuilder{
@Override
public Produit getProduit() {
return new Produit(os, processeur, batterie, ecran, marque, prix, typeProduit);
return new Produit(nom,os, processeur, batterie, ecran, marque, prix, typeProduit);
}
}
public class TelephoneBuilder implements IProduitBuilder{
String nom = "";
String os = "";
String processeur = "";
int batterie = 0;
......@@ -7,6 +8,12 @@ public class TelephoneBuilder implements IProduitBuilder{
int prix = 0;
String typeProduit = "Telephone";
@Override
public IProduitBuilder setNom(String nom) {
this.nom = nom;
return this;
}
@Override
public IProduitBuilder setOs(String os) {
this.os = os;
......@@ -45,6 +52,6 @@ public class TelephoneBuilder implements IProduitBuilder{
@Override
public Produit getProduit() {
return new Produit(os, processeur, batterie, ecran, marque, prix, typeProduit);
return new Produit(nom,os, processeur, batterie, ecran, marque, prix, typeProduit);
}
}
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter