Aide en Java

Aide en Java - Java - Programmation

Marsh Posté le 07-02-2010 à 08:09:12    

Bonjour,
Merci de m'aider dans cet exercice :
J'ai essayé de faire quelque chose, mais je ne sais pas par ou commencer.
Merci pour votre compréhension.  
 
Une bibliothèque sera représentée par un tableau de documents. Définissez une classe Bibliotheque, avec les méthodes :
• Bibliotheque(int capacité) - constructeur qui crée une bibliothèque ayant la capacité(nombre maximum de documents) indiquée,
• void afficherDocuments() - affiche tous les ouvrages de la bibliothèque,
• void afficherAuteurs() - affiche la liste des auteurs de la bibliothèque (au besoin,utilisez l’opérateur instanceof),
• boolean ajouter(Document doc) - ajoute le document référencé par doc et renvoie true
(false en cas d’échec),
• Document document(int i) - renvoie le ième document,
• boolean supprimer(Document doc) - supprime le document référencé par doc et renvoie
true (false en cas d’échec).
• Définissez, avec un effort minimal, une classe Livrotheque ayant les mêmes fonctionnalités que Bibliotheque mais entièrement constituée de livres. Comment optimiser dans la classe Livrotheque la méthode afficherAuteurs ?
 
Merci pour votre aide

Reply

Marsh Posté le 07-02-2010 à 08:09:12   

Reply

Marsh Posté le 07-02-2010 à 08:20:10    

Fait voir ce que tu as déjà fait,
on fait pas les devoirs


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 08-02-2010 à 03:20:30    

Bonjour,
Merci pour votre réponse, je sais que vous ne faites pas les devoirs. :non: .quand j'ai dit que je ne sais pas par ou commencer; c'est vraiment le cas!
 
Voici ce que j'ai fait :
-------------------------------------
 
public class Biblio {
 
 Documents tab[];
 
public Biblio(int capacite)
{
 tab = new Documents[capacite];
}
 
public void afficherDocument()
{
 
 for (int i = 0; i<= tab.length;i++)
 {
  System.out.println(tab[i]);
 }
}
public void afficherAuteur()
{
 int capacite=0;
 tab =new Documents[capacite];
 
 for(int i =0 ; i<= tab.length; i++)
 {
  System.out.println(tab[i].getNum_enregistrement());
  if (tab[i] instanceof Livre)
   
  System.out.println(" "+((Livre)tab[i]).getAuteur());  
   
  else
   
  System.out.println(" " );  
   
 }
}
 
}
 
--------------------------------------------------
 
Merci pour la compréhension ,et désolé pour le dérangement  
 
 :)  

Reply

Marsh Posté le 08-02-2010 à 03:23:03    

Bonjour,
Merci pour votre réponse, je sais que vous ne faites pas les devoirs. :non: .quand j'ai dit que je ne sais pas par ou commencer; c'est vraiment le cas!
 
Voici ce que j'ai fait :
-------------------------------------
 
public class Biblio {
 
 Documents tab[];
 
public Biblio(int capacite)
{
 tab = new Documents[capacite];
}
 
public void afficherDocument()
{
 
 for (int i = 0; i<= tab.length;i++)
 {
  System.out.println(tab[i]);
 }
}
public void afficherAuteur()
{
 int capacite=0;
 tab =new Documents[capacite];
 
 for(int i =0 ; i<= tab.length; i++)
 {
  System.out.println(tab[i].getNum_enregistrement());
  if (tab[i] instanceof Livre)
   
  System.out.println(" "+((Livre)tab[i]).getAuteur());  
   
  else
   
  System.out.println(" " );  
   
 }
}
 
}
 
--------------------------------------------------
 
Merci pour la compréhension ,et désolé pour le dérangement  
 
 :)  

Reply

Marsh Posté le 08-02-2010 à 10:12:50    

Avant de coder, commencer par modeliser, surtout quand c'est simple.

Reply

Marsh Posté le 09-02-2010 à 01:18:34    

Bonjour,
y t il quelqu'un qui peut me dire si ce que j'ai fait est  correct ou pas.
Merci

Reply

Marsh Posté le 13-02-2010 à 02:01:48    

Difficile de t'aider puisqu'on n'a pas toutes les données. On n'a pas la définition de la classe Document par exemple, ni de la classe Livre.
 
Cependant je peux déjà te dire que ta classe devra stocker à la fois un tableau de Document et un entier qui correspond au nombre de documents actuellement insérés dans le tableau. Par facilité tu peux aussi utiliser la classe ArrayList et lui passer la capacité en paramètre à l'instanciation, si cela est permis par ton prof.
 
Quand tu itères sur le tableau de Document, tu dois aller de 0 au nombre de documents actuellement stockés, et non pas parcourir l'ensemble du tableau comme tu le fais actuellement sinon le programme va coincer dès que tu arrives sur un élément non alloué dans le tableau.
 
Ta méthode AfficherAuteur() semble très fausse aussi.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed