Vous êtes sur la page 1sur 5

Université Mohammed Premier, Oujda Module POO-Java

Faculté des sciences Filière SMI - Semestre 5


Département d’Informatique Année universitaire 2023/2024
Correction TP 6
Exercice 1 (Sans exception)
public interface Exportable {
String paysDestination();
double prixTransport();
}

import java.util.Scanner;
public class Article implements Exportable {
Scanner clavier=new Scanner(System.in);
private static int code1 = 0 ;
protected int code ;
protected String nom ;
protected double prixHT ;
public Article1(String nom, double prixHT ) {
++code1 ;
this.code = code1 ;
this.nom = nom ;
this.prixHT = prixHT ;
}
public String paysDestination() {
System.out.println("Entrez le pays de destination");
String pays = clavier.next();
return pays ;
}
public double prixTransport(){
return prixHT*0.05;
}
public void afficher(){
System.out.println("Code : " + code);
System.out.println("Nom : " + nom );
System.out.println("Pays de destination : " + paysDestination());
System.out.println("Prix total : " + (prixHT+prixTransport()));
}
}

public class Fragile extends Article {


String emballage;
public Fragile(String nom, double prixHT, String emballage) {
super(nom,prixHT);
this.emballage = emballage;
}
public double prixTransport() {
return 2*super.prixTransport();
}
}

1
import java.util.ArrayList;
public class Magasin {
private String nom;
private ArrayList<Article> A;
public Magasin(String nom, ArrayList<Article> A){
this.nom = nom;
this.A = A;
}
public void ajouter(Article B){
A.add(B);
}
public Boolean contenir(Article B){
return A.contains(B);
}
public String get_Nom() {
return nom;
}
}

public class Test {


public static void main(String[] args) {
Article[] tab = new Article[4];
tab[0] = new Article("Table",800);
tab[1] = new Article("Bureau",1500);
tab[2] = new Fragile("TV",3000,"caisse en carton");
tab[3] = new Fragile("Tableau artistique",40000,"caisse en bois");
ArrayList<Article> A = new ArrayList<Article>();
for(int i=0; i<tab.length-1;i++){
tab[i].afficher();
A.add(tab[i]);
}
Magasin B = new Magasin("NewStore",A);
System.out.println(B.contenir(tab[3]));
B.ajouter(tab[3]);
System.out.println(B.contenir(tab[3]));
}
}

Exercice 1 (Avec exception)


public class ErrPrix extends Exception {
public ErrPrix(){
System.out.println("Le prix doit etre positif" ) ;
}
}

import java.util.Scanner;
public class Article1 implements Exportable {
Scanner clavier=new Scanner(System.in);
private static int code1 = 0 ;
protected int code ;
protected String nom ;
protected double prixHT ;

2
public Article1(String nom, double prixHT ) throws ErrPrix{
if (prixHT < 0 )
throw new ErrPrix();
++code1 ;
this.code = code1 ;
this.nom = nom ;
this.prixHT = prixHT ;
}
public String paysDestination() {
System.out.println("Entrez le pays de destination");
String pays = clavier.next();
return pays ;
}
public double prixTransport(){
return prixHT*0.05;
}
public void afficher(){
System.out.println("Code : " + code);
System.out.println("Nom : " + nom );
System.out.println("Pays de destination : " + paysDestination());
System.out.println("Prix total : " + (prixHT+prixTransport()));
}
}

public class Fragile1 extends Article1 {


String emballage ;
public Fragile1(String nom, double prixHT , String emballage) throws ErrPrix{
super (nom, prixHT);
this.emballage = emballage ;
}
public double prixTransport(){
return 2*super.prixTransport();
}
}

import java.util.ArrayList;
public class Magasin1 {
private String nom;
ArrayList<Article1> A = new ArrayList<Article1>();
public Magasin1(String nom,ArrayList<Article1> A){
this.nom = nom;
this.A = A;
}
public void ajouter1(Article1 B){
A.add(B);
}
public Boolean contenir1(Article1 B){
return A.contains(B);
}

import java.util.ArrayList;

3
public class Test1 {
public static void main(String[] args) {
Article1[] tab = new Article1[4];
try{
tab[0] = new Article1("Table",600);
tab[1] = new Article1("Bureau",2000);
tab[2] = new Fragile1("TV",-3000,"caisse en carton");
tab[3] = new Fragile1("Tableau artistique",40000,"caisse en bois");
}
catch(ErrPrix e) {
System.out.println(e);
}
ArrayList<Article1> A = new ArrayList<Article1>();
for(int i=0; i<tab.length-1;i++){
tab[i].afficher();
A.add(tab[i]);
}
Magasin1 B = new Magasin1("NewStore",A);
System.out.println(B.contenir1(tab[3]));
B.ajouter1(tab[3]);
System.out.println(B.contenir1(tab[3]));
}
}

Exercice 2
public class Err extends Exception {
public Err() {
System.out.println("Le privilège doit être 0 ou 1");
}
}

public class Utilisateur {


private String nomUtilis, motPass;
private int numU numUtilis tilis, privilege;
public Utilisateur(String nomUtilis, String motPass, int numUtilis, int privilege) throws Err{
if (privilege != 0 && privilege != 1)
throw new Err();
else{
this. nomUtilis = nomUtilis;
this.motPass = motPass;
this. numUtilis = numUtilis;
this.privilege = privilege;
}
}

public void afficher(){


System.out.println(nomUtilis + ", " + motPass + ", " + numUtilis + ", " + privilege);
}
}

public class Test {


public static void main(String[] args) {

4
try{
Utilisateur A = new Utilisateur("Admin","0000",1,3);
Utilisateur B = new Utilisateur("User","1111",2,1);
A.afficher();
B.afficher();
} catch(Err e){
System.out.println(e);
}
}
}

Vous aimerez peut-être aussi