IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

programmation liste chainee (en java)


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut programmation liste chainee (en java)
    bonjour a tout le monde!

    en effet je suis en train de faire un exercice ( programmation en java en utilisant les liste chainée )

    je vous propose un corrige si vous pouvez me dire si c'est bon ou pas sinon merci de donner des conseille .


    Listes chainees :

    1 caddie de ménagère est constitue de produits
    La classe produits est composée de

    -nom produit (nom_produit)
    -code barre (code_barre)
    -prix (prix_ttc) (a noter: pas de différence entre prix ht et ttc)

    Elle est implémentée par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Class Produit
    {
    string nom_produit ;
    int code_barre ;
    double prix_ttc ;
     
    PublicProduit (string prod, int code, double prix)                     
           {
    this.nom_produit = prod ;
    this.code_barre = code ;
    this.prix_ttc = prix ;
           }
    }
    1)Un caddie est constitue d'une liste de produit.
    Definir le type caddie en utilisant les listes chainees (on ecrira
    la liste et son constructeur)

    2)Ecrire PrixCaddie une methode d'instance de la classe caddie qui retourne le
    prix total d'un caddie (balayage boucle) puis addition prix.


    Ma proposition:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public class Caddie 
    { int produit;
    Elementlist suivant;
    Elementlist (int produit ,Elementliste suivant)
    {
    this.produit=produit;
    this.suivant=suivant;
    }
    public void Ecrire PrixCaddie (prix p)
    {
     for (int i=0,i<n;i++)
        produit1=new produit
        prixtotal=produit++
       retutn prixtotal
    }
    }

    merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 333
    Par défaut
    Ton code ne compile pas ...
    Je te conseille d'utiliser un éditeur (par exemple eclipse) qui pourra t'aider dans un premier temps à faire un code qui compile

  3. #3
    Membre émérite
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Par défaut
    Quand on te demande d'écrire la méthode Prix Caddy il ne faut pas écrire public void Ecrire PrixCaddy mais public int PrixCaddy car déja tu retournes une valeur alors que tu mets void dans ta signature de méthode.
    De plus Ecrire PrixCaddy n'a pas de sens vu que tu mets void avant!

    Installe Eclipse ou Netbeans pour qu'il te mette du rouge partout!

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 321
    Par défaut
    Voici ce que je te propose pour la classe Cadie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    public class Caddie extends ArrayList
    { 
    private int total = 0;
     
    public Caddie() {
    this = new ArrayList<Produit>();
    }
     
    public int PrixCaddie()
    {
     for (int i=0,i<this.length();i++)
     {
        this.total = this.total + this.get(i).prix_ttc
     }
       retutn this.total
    }
    }
    Ca fait assez longtemps que je n'ai pas fais de java alors j'espere ne pas avoir dis trop de betises...

  5. #5
    Membre émérite Avatar de Heimdal
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 549
    Par défaut
    Salut,

    ton code ne compile toujours pas...
    Installe Eclipse ou Netbeans pour qu'il te mette du rouge partout!
    Sinon, ton implémentation actuelle ne répond pas à l'énoncé de l'exercice: aucune notion de liste chainée.

    Sinon qqs remarques en vrac:

    - Hériter d'ArrayList ne sert à rien.
    - la méthode length() n'existe pas sur les listes
    - this = new ArrayList<Produit>(); est interdit -> super()
    - si la classe Produit tel que tu nous la donne fait partie de l'énoncé, je ne comprends pas ce que ton prof entend par liste chainée.

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 109
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Listes chainees :
     
    1 caddie de ménagère est constitue de produits
    La classe produits est composée de
     
    -nom produit (nom_produit)
    -code barre (code_barre)
    -prix (prix_ttc) (a noter: pas de différence entre prix ht et ttc)
     
    Elle est implémentée par :
     
    Code :
     
    Public Class Produit
    {
    string nom_produit ;
    int code_barre ;
    double prix_ttc ;
     
    PublicProduit (string prod, int code, double prix)                     
           {
    this.nom_produit = prod ;
    this.code_barre = code ;
    this.prix_ttc = prix ;
           }
    }
     
    1)Un caddie est constitue d'une liste de produit.
    Definir le type caddie en utilisant les listes chainees (on ecrira
    la liste et son constructeur)
     
    2)Ecrire PrixCaddie une methode d'instance de la classe caddie qui retourne le
    prix total d'un caddie (balayage boucle) puis addition prix.
    salut a toi .
    la façon donc ta fais la classe caddie est celle du langage C .
    en effet comme en C il n'y pas de notion de Liste on définie une structure pour simuler une liste; (c'est ce que t'a fais)

    en java c 'est pas du tout pareil on pense plus objet et en java les listes existe :ArrayList<E>

    pour la classe produit :

    public class Produit {

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    	String nomProduit;
    	int codeBarre;
    	float prix;
     
     
    	//constructor
     
    	public Produit(){
     
    	}
     
    	// 2end constructor
    	public Produit(String nomProduit,int codeBarre ,float prix){
    		this.nomProduit = nomProduit;
    		this.codeBarre  = codeBarre;
    		this.prix =prix;
    	}
     
    public float getPrix(){
         return this.prix;
    }
    en ce qui concerne la classe caddie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    public class Caddies {
     
    	//liste des produits
    	ArrayList ListProduit = new ArrayList();
     
     
    	//constructor
     
    	public Caddies(){
     
    	}
     
     
    float PrixCaddie(List listProduit){
     
    	float prixTotal = 0;
    	float prixTmp;
     
    	for (i = 0; i< listProduit.size(); i++){
     
    		prixTmp = listProuit.get(i).getPrix(); 
    		prixTotal =  prixTotal + prixTmp;
     
    	}
    	return prixTotal;
    } 
     
    }
    voila j'espère que ça va t'aider.

Discussions similaires

  1. [LG]probleme d'ajout dans une liste chainée...
    Par misteryann dans le forum Langage
    Réponses: 5
    Dernier message: 08/03/2004, 20h28
  2. [LG]Listes chainées avec pointeur
    Par PaowZ dans le forum Langage
    Réponses: 2
    Dernier message: 17/02/2004, 19h49
  3. [LG]liste chainee + pointeur + affichage
    Par k_ro dans le forum Langage
    Réponses: 6
    Dernier message: 17/01/2004, 13h58
  4. [LG]Tri par insertion dans une liste chainée
    Par mister_dsg dans le forum Langage
    Réponses: 4
    Dernier message: 18/12/2003, 22h34
  5. [LG]suppression dans une liste chainée
    Par mister_dsg dans le forum Langage
    Réponses: 9
    Dernier message: 16/12/2003, 21h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo