erreur lors de compilation, calcul mais pq ????

erreur lors de compilation, calcul mais pq ???? - Java - Programmation

Marsh Posté le 16-04-2006 à 21:33:56    

bonjour j ai besoin d aide pour un calcul que j arrive pas a faire a cause d une erreur merci de m aider , j ai une erreur de type, " )" expected je comprend pas pourquoi merci de m'aider svp
l'erreur est biensur celle qui est souligne en rouge

 

// Calculer le montant total des locations avant les taxes
    void calculerMontantLocationVoiture()
        {
        montantLocationVoiture =(((nombreJoursLocation) *((voiture.obtenirNombreVoituresPetitesLouees)* (voiture.obtenirLocaPetite)) + (voiture.obtenirAssuPetite) +
                      ((nombreJoursLocation) *((voiture.obtenirNombreVoituresIntermediairesLouees)* (voiture.obtenirLocaInterm)) + (voiture.obtenirAssuInterm)
                      ((nombreJoursLocation) *((voiture.obtenirNombreVoituresGrandeLouees)* (voiture.obtenirLocaGrande)) + (voiture.obtenirAssuGrande) +
                      ((nombreJoursLocation) *((voiture.obtenirNombreVoituresMinivansLouees)* (voiture.obtenirLocaMinibus)) + (voiture.obtenirAssuMinibus) +
                      ((nombreJoursLocation) *((voiture.obtenirNombreVoituresSportLouees)* (voiture.obtenirLocaSport)) + (voiture.obtenirAssuSport) +
                     ((nombreJoursLocation) *((voiture.obtenirNombreVoituresEnvironnmentLouees)* (voiture.obtenirLocaProtegeons) + (voiture.obtenirAssuProtegeons)));
         }

Reply

Marsh Posté le 16-04-2006 à 21:33:56   

Reply

Marsh Posté le 16-04-2006 à 21:35:36    

je viens de voir qu il y a un smile a la place de l erreur alors l erreur est de type " ) " expected

Reply

Marsh Posté le 16-04-2006 à 21:39:43    

ben il manque une parenthese ) quoi [:pingouino]

Reply

Marsh Posté le 16-04-2006 à 21:40:37    

ben t'a du oublier une parenthèse...si tu bosses avec un IDE, clique après une parenthèse et regarde où il te dis que se trouve la parenthèse ouvrante...


---------------
Jubi Photos : Flickr - 500px
Reply

Marsh Posté le 16-04-2006 à 21:43:14    

je bosse pas avec ide le prof nous oblige a bosser avec BLUEJ et pourtant je viens de le refaire comme ceci, et rien a faire meme erreur je dois bien mettre une ; a la fin de la ligne de calcul ???
 
montantLocationVoiture =(((nombreJoursLocation * voiture.obtenirNombreVoituresPetitesLouees*(voiture.obtenirLocaPetite + voiture.obtenirAssuPetite)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresIntermediairesLouees * (voiture.obtenirLocaInterm + voiture.obtenirAssuInterm))+
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresGrandeLouees * (voiture.obtenirLocaGrande + voiture.obtenirAssuGrande)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresMinivansLouees* (voiture.obtenirLocaMinibus + voiture.obtenirAssuMinibus)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresSportLouees * (voiture.obtenirLocaSport + voiture.obtenirAssuSport)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresEnvironnmentLouees * (voiture.obtenirLocaProtegeons + (voiture.obtenirAssuProtegeons)));

Reply

Marsh Posté le 16-04-2006 à 21:45:26    

je posais la question est ce vous pensez, pas que cela peut venir d une erreur, style que si le client ne prend pas juste un type de voiture alors cela cree une erreur ?

Reply

Marsh Posté le 16-04-2006 à 21:47:12    

je vois pas ou est l erreur, car j ai verifier et reverifier il y a pas de problemes de )

Reply

Marsh Posté le 16-04-2006 à 22:10:05    

Personne pour m aider je vous donne le code au complet toujours la meme erreur
 
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
 
/**
 * Cette classe gere le calcul des montants de la facture.  
 * Elle contient toutes les informations sur les location de voiture(location)  
 * et sur les assurances (assurance).
 * Cette classe est publique,  
 * les constantes ont une portee de type package (aucun modificateur),  
 * les attributs d'instance sont prives et toutes les methodes sont publiques.
 *  
 * @author (your name)  
 * @version (a version number or a date)
 */
public class Facture
{
 
  // declaration des variables
   
        SimpleDateFormat formatDate = new SimpleDateFormat("dd-MM-yyyy" );  // format de date
        Date dateSysteme = new Date(); // Creation d'un objet date
         
    // taux des taxes
    public final double tauxTPS=0.07;
    public final double tauxTVQ=0.075;
    public final double rabaisProtegeons=0.8; //rabais de 20% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Protégeons l’environnement ».
    public final double rabaisPetite=0.85;   //rabais de 15% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Petite                                    //rabais de 15% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Petite  
     
    //attributs d'instrance
    private int nombreJoursLocation;//montant journalier de location
    private double montantJournalierLocation; // montant journalier d'assurance
    private double montantJournalierAssurance;// montant journalier d'assurance
    private double montantLocationVoiture;//montant d'assurance avant taxes
    private double montantTotalLocationVoiture; // location et assurance avant taxes
    private double montantTPS; // represente le montant de la taxe TPS
    private double montantTVQ; // represente le montant de la taxe TVQ      
    private double montantTotalFacture; // montant total apres taxes
     
   /**
     * Constructor for objects of class Facture
     */
       
    public Facture(Location CetteLocation)  
       {
      this.Location =  CetteLocation;      
       }
    /**
      * chaque constante de classe est partagée entre toutes les instances
      * chaque constante est invariable (final pas modifiable)
      * */    
       
   private final static String NOMBREJOURSLOCATION = "\n nombreJoursLocation\t\t: " ;
   private final static String MONTANTJOURNALIERLOCATION= "\n montantJournalierLocation\t\t: " ;
   private final static String MONTANTJOURNALIERASSURANCE= "\n montantJournalierAssurrance\t\t: " ;
   private final static String MONTANTLOCATIONVOITURE = "\n montantLocationVoiture\t\t: " ;
   private final static String MONTANTTOTALLOCATIONVOITURE = "\n montantLocationVoiture\t\t: " ;
   private final static String MONTANTTPS = "\n nombreVoituresSportLouees\t\t: " ;
   private final static String MONTANTTVQ= "\n personneLocataire \t\t: " ; //personne qui loue la voiture
   private final static String MONTANTTOLTALFACTURE = "\n voitureLouee \t\t: " ; //voiture louée
     
   public Facture()
     {
           nombreJoursLocation = 0;
           montantJournalierLocation = 0;
           montantJournalierAssurance = 0;
           montantLocationVoiture = 0;
           montantTotalLocationVoiture = 0;
           montantTps = 0;
           montantTvq = 0;  
           montantTotalFacture = 0;
      }    
       
       public Facture (int nj, double ml, double ma, double mv , double mt, double ms, double mq, double mf)  
     {  
             
           nombreJoursLocation = nj;
           montantJournalierLocation = ml;
           montantJournalierAssurance = ma;
           montantLocationVoiture = mv;
           montantTotalLocationVoiture = mt;
           montantTps = ms;
           montantTvq = mq;  
           montantTotalFacture = mf;
        }
         
  /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setNombreJoursLocation (int p_nombreJoursLocation)
    {
     nombreJoursLocation = p_nombreJoursLocation ;
    }      
  /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setMontantJournalierLocation ( double p_montantJournalierLocation)
    {
     montantJournalierLocation = p_montantJournalierLocation ;
    }          
   /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setmontantJournalierAssurance (double p_montantJournalierAssurance )
    {
     montantJournalierAssurance  = p_montantJournalierAssurance ;
    }        
   /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setMontantLocationVoiture (double p_montantLocationVoiture)
    {
     montantLocationVoiture = p_montantLocationVoiture;
    }
    /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setMontantTotalLocationVoiture (double p_montantTotalLocationVoiture)
    {
     montantTotalLocationVoiture = p_montantTotalLocationVoiture;
    }    
    /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setMontantTPS (double p_montantTPS)
    {
     montantTPS = p_montantTPS;
    }    
    /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/
   
   public void setMontantTPQ (double p_montantTPQ)
    {
     montantTPQ = p_montantTPQ;
    }
    /***********************************************************************
  * But     : Permet d'initialiser la nombre de voiture petites louees
  * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  ************************************************************************/  
   public void setmontantTotalFacture (double p_montantTotalFacture)
    {
     montantTotalFacture = p_montantTotalFacture;
    }
 /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  *********************************************************************/
  public int getNombreJoursLocation()
    {
      return nombreJoursLocation;
    }  
     
  /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  *********************************************************************/
  public double getMontantJournalierLocation()
    {
      return montantJournalierLocation;
    }  
     
  /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  **********************************************************************/
  public double getMontantJournalierAssurance()
    {
      return montantJournalierAssurance;
    }    
     
  /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  *********************************************************************/
  public double getMontantLocationVoiture()
    {
      return montantLocationVoiture;
    }      
     
  /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  **********************************************************************/
  public double getMontantTotalLocationVoiture ()
    {
      return montantTotalLocationVoiture ;
    }
     
  /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  **********************************************************************/
  public double getMontantTps ()
    {
      return montantTotalLocationVoiture ;
    }  
    /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  **********************************************************************/
  public double getMontantTvq ()
    {
      return montantTvq ;
    }  
  /*********************************************************************
  * But     : Permet de consulter ou obtenir la marque de la voiture
  * @return marque marque de la voiture
  **********************************************************************/
  public double getMontantTotalFacture()
    {
      return montantTotalFacture;
    }  
     
   // Calculer le montant total des locations avant les taxes
    void calculerMontantLocationVoiture()
        {
        montantLocationVoiture =((((nombreJoursLocation * voiture.obtenirNombreVoituresPetitesLouees*((voiture.obtenirLocaPetite * rabaisPetite) + voiture.obtenirAssuPetite))) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresIntermediairesLouees * (voiture.obtenirLocaInterm + voiture.obtenirAssuInterm))+
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresGrandeLouees * (voiture.obtenirLocaGrande + voiture.obtenirAssuGrande)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresMinivansLouees* (voiture.obtenirLocaMinibus + voiture.obtenirAssuMinibus)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresSportLouees * (voiture.obtenirLocaSport + voiture.obtenirAssuSport)) +
                      ((nombreJoursLocation * voiture.obtenirNombreVoituresEnvironnmentLouees * (voiture.obtenirLocaProtegeons * rabaisProtegeons) + voiture.obtenirAssuProtegeons))));
          }
         
         // Montant total location de voiture
    void calculerMontantTotalLocationVoiture ()
        {
        montantTotalLocationVoiture = montantLocationVoiture + montantLocationAssurance
        }
         
    // Calcul le montant de TPS  
     void calculerMontantTPS()
        {
        montantTPS = montantVente * tauxTPS;
        }
     
     // Calcul le montant de TVQ
     void calculerMontantTVQ()
        {
        montantTVQ = (montantVente + montantTPS)* tauxTVQ;
        }
     // Calcul le montant total de la facture
     void calculerMontantTotal()
        {
        montantTotalFacture = montantTotalLocationVoiture + montantTPS + montantTVQ;
        }
         
         
  /*********************************************************************
  * But     : Permet d'afficher les informations concernant une instance
  *           de la Classe Personne
  **********************************************************************/    
    public void afficher()
     
            {
                 
    private int nombreJoursLocation;//montant journalier de location
    private double montantJournalierLocation; // montant journalier d'assurance
    private double montantJournalierAssurance;// montant journalier d'assurance
    private double montantLocationVoiture;//montant d'assurance avant taxes
    private double montantTotalLocationVoiture; // location et assurance avant taxes
    private double montantTPS; // represente le montant de la taxe TPS
    private double montantTVQ; // represente le montant de la taxe TVQ      
    private double montantTotalFacture; // montant total apres taxes    
                 
                 
                 
            System.out.println(" Pour la catégorie : " );
            System.out.println("Nbr jours de location = " + NombreJoursLocation +"montant journalier location  = "+ MontantJournalierLocation +" montant journalier assurance = " + MontantJournalierAssurance + "montant de location Voiture = "+ MontantLocationVoiture+ "montant total location voiture =  "+ MontantTotalLocationVoiture + " montant de la TPS ="+ MontantTPS + " montant de la TVQ ="+ MontantTVQ + "montant total de la facture =" + MontantTotalFacture);
            NumberFormat formatMonetaire = NumberFormat.getCurrencyInstance(); // format monetaire
            System.out.println(formatDate.format(dateSysteme)); // format de date
            System.out.println();
             
             public static void main(String[] args) {
                 
              int nombreJoursLocation;//montant journalier de location
              double montantJournalierLocation; // montant journalier d'assurance
              double montantJournalierAssurance;// montant journalier d'assurance
              double montantLocationVoiture;//montant d'assurance avant taxes
              double montantTotalLocationVoiture; // location et assurance avant taxes
              double montantTPS; // represente le montant de la taxe TPS
              double montantTVQ; // represente le montant de la taxe TVQ      
              double montantTotalFacture; // montant total apres taxes
             
            //Bloc de saisie
            System.out.println("Vous avez loué "+ voiture.obtenirNombreVoituresPetitesLouees() + "au montant de "+ formatMonetaire.format(voiture.prixUnitairePetite) + " assurance pour la location de voiture petite "+formatMonetaire.format(voiture.prixUnitaireAssuPetite)+"." );
            System.out.println();
            // le prix unitaire et le nombre location pour la categorie interm
            System.out.println("Vous avez loué "+ voiture.obtenirNombreVoituresIntermediairesLouees() + "au montant de "+ formatMonetaire.format(voiture.prixUnitaireInterm) + " assurance pour la location de voiture intermediaire "+formatMonetaire.format(voiture.prixUnitaireAssuInterm)+"." );
            System.out.println();
            // le prix unitaire et le nombre location pour la categorie grande  
            System.out.println("Vous avez loué "+ voiture.obtenirnNombreVoituresGrandeLouees() + "au montant de "+ formatMonetaire.format(voiture.prixUnitaireGrande) + " assurance pour la location de voiture grande "+formatMonetaire.format(voiture.prixUnitaireAssuGrande)+"." );
            System.out.println();
            // le prix unitaire et le nombre location pour la categorie Minibus  
            System.out.println("Vous avez loué "+ voiture.obtenirNombreVoituresMinivansLouees() + "au montant de "+ formatMonetaire.format(voiture.prixUnitaireMinibus) + " assurance pour la location de voiture Minibus "+formatMonetaire.format(voiture.prixUnitaireAssuMinibus)+"." );
            System.out.println();
            // le prix unitaire et le nombre location pour la categorie Sport  
            System.out.println("Vous avez loué "+ voiture.obtenirNombreVoitureSport() + "au montant de "+ formatMonetaire.format(voiture.prixUnitaireSport) + " assurance pour la location de voiture Sport "+formatMonetaire.format(voiture.prixUnitaireAssuSport)+"." );
            System.out.println();
            // le prix unitaire et le nombre location pour la categorie Protegeons  
            System.out.println("Vous avez loué "+ voiture.obtenirNombreVoituresEnvironnmentLouees() + "au montant de "+ formatMonetaire.format(voiture.prixUnitaireProtegeons) + " assurance pour la location de voiture Minibus "+formatMonetaire.format(voiture.prixUnitaireAssuProtegeons)+"." );
            System.out.println();
             
            // le total des billets
            System.out.println("Montant des locations avant les taxes : "+formatMonetaire.format(montantVente));
            // les taxes
            System.out.println();
            System.out.println("TPS : "+formatMonetaire.format(montantTPS));  
            System.out.println();
            System.out.println("TVQ : "+formatMonetaire.format(montantTVQ));
            // le montant total de la facture
            System.out.println();
            System.out.println("Le total de la facture est de  "+formatMonetaire.format(montantTotalFacture));
            System.out.println();
             
            // Création d'une instance  
            Facture uneFacture = new Facture(nombreVoituresIntermediairesLouees,nombreVoituresGrandeLouees,nombreVoituresMinivansLouees,nombreVoituresSportLouees,nombreVoituresEnvironnmentLouees);  
            uneFacture.afficher();
    }  
}
 

Reply

Marsh Posté le 16-04-2006 à 22:33:43    

Utilise les balises C/c++ pour insérer du code, ça sera plus lisible (et sans les smileys).
 
Sinon je vois déjà 3 erreurs :
1. Il manque un ';' dans la méthode calculerMontantTotalLocationVoiture
2. La méthode afficher ne se termine pas (il manque une '}')
3. Les attributs d'instance sont à nouveau déclarés dans la méthode afficher.
 3.1. Avec le modificateur private => erreur.
 3.2. Pourquoi ?

Reply

Marsh Posté le 16-04-2006 à 22:42:59    

merci de tes reponses je vais corriger cela, mais pourquoi tu dis qu il y a une erreur? car ce n est pas un modificateur de l mettre en private, car justement c est pour que les donnes soit en privé ou je suis a cote de la plaque ? je suis nouveau en programmation IoI

Reply

Marsh Posté le 16-04-2006 à 22:42:59   

Reply

Marsh Posté le 16-04-2006 à 23:10:58    

voila j ai terminer mon code mais toujours la meme erreur au meme endroit  
 
voici le code au complet  :bounce:  :bounce:  
 

Code :
  1. import java.text.NumberFormat;
  2. import java.text.SimpleDateFormat;
  3. import java.util.Date;
  4. /**
  5. * Cette classe gere le calcul des montants de la facture.  
  6. * Elle contient toutes les informations sur les location de voiture(location)  
  7. * et sur les assurances (assurance).
  8. * Cette classe est publique,  
  9. * les constantes ont une portee de type package (aucun modificateur),  
  10. * les attributs d'instance sont prives et toutes les methodes sont publiques.
  11. *  
  12. * @author (your name)  
  13. * @version (a version number or a date)
  14. */
  15. public class Facture
  16. {
  17.   // declaration des variables
  18.  
  19.         SimpleDateFormat formatDate = new SimpleDateFormat("dd-MM-yyyy" );  // format de date
  20.         Date dateSysteme = new Date(); // Creation d'un objet date
  21.        
  22.     // taux des taxes
  23.     public final double tauxTPS=0.07;
  24.     public final double tauxTVQ=0.075;
  25.     public final double rabaisProtegeons=0.8; //rabais de 20% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Protégeons l’environnement ».
  26.     public final double rabaisPetite=0.85;   //rabais de 15% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Petite                                    //rabais de 15% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Petite   
  27.    
  28.     //attributs d'instrance
  29.     private int nombreJoursLocation;//montant journalier de location
  30.     private double montantJournalierLocation; // montant journalier d'assurance
  31.     private double montantJournalierAssurance;// montant journalier d'assurance
  32.     private double montantLocationVoiture;//montant d'assurance avant taxes
  33.     private double montantTotalLocationVoiture; // location et assurance avant taxes
  34.     private double montantTPS; // represente le montant de la taxe TPS
  35.     private double montantTVQ; // represente le montant de la taxe TVQ       
  36.     private double montantTotalFacture; // montant total apres taxes
  37.    
  38.    /**
  39.      * Constructor for objects of class Facture
  40.      */
  41.      
  42.     public Facture(Location CetteLocation)
  43.        {
  44.       this.Location =  CetteLocation;   
  45.        }
  46.     /**
  47.       * chaque constante de classe est partagée entre toutes les instances
  48.       * chaque constante est invariable (final pas modifiable)
  49.       * */ 
  50.      
  51.    private final static String NOMBREJOURSLOCATION = "\n nombreJoursLocation\t\t: " ;
  52.    private final static String MONTANTJOURNALIERLOCATION= "\n montantJournalierLocation\t\t: " ;
  53.    private final static String MONTANTJOURNALIERASSURANCE= "\n montantJournalierAssurrance\t\t: " ;
  54.    private final static String MONTANTLOCATIONVOITURE = "\n montantLocationVoiture\t\t: " ;
  55.    private final static String MONTANTTOTALLOCATIONVOITURE = "\n montantLocationVoiture\t\t: " ;
  56.    private final static String MONTANTTPS = "\n nombreVoituresSportLouees\t\t: " ;
  57.    private final static String MONTANTTVQ= "\n personneLocataire \t\t: " ; //personne qui loue la voiture
  58.    private final static String MONTANTTOLTALFACTURE = "\n voitureLouee \t\t: " ; //voiture louée
  59.    
  60.    public Facture()
  61.      {
  62.            nombreJoursLocation = 0;
  63.            montantJournalierLocation = 0;
  64.            montantJournalierAssurance = 0;
  65.            montantLocationVoiture = 0;
  66.            montantTotalLocationVoiture = 0;
  67.            montantTps = 0;
  68.            montantTvq = 0;
  69.            montantTotalFacture = 0;
  70.       } 
  71.      
  72.        public Facture (int nj, double ml, double ma, double mv , double mt, double ms, double mq, double mf)
  73.      {
  74.            
  75.            nombreJoursLocation = nj;
  76.            montantJournalierLocation = ml;
  77.            montantJournalierAssurance = ma;
  78.            montantLocationVoiture = mv;
  79.            montantTotalLocationVoiture = mt;
  80.            montantTps = ms;
  81.            montantTvq = mq;
  82.            montantTotalFacture = mf;
  83.         }
  84.        
  85.   /***********************************************************************
  86.   * But     : Permet d'initialiser la nombre de voiture petites louees
  87.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  88.   ************************************************************************/
  89.  
  90.    public void setNombreJoursLocation (int p_nombreJoursLocation)
  91.     {
  92.      nombreJoursLocation = p_nombreJoursLocation ;
  93.     }     
  94.   /***********************************************************************
  95.   * But     : Permet d'initialiser la nombre de voiture petites louees
  96.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  97.   ************************************************************************/
  98.  
  99.    public void setMontantJournalierLocation ( double p_montantJournalierLocation)
  100.     {
  101.      montantJournalierLocation = p_montantJournalierLocation ;
  102.     }       
  103.    /***********************************************************************
  104.   * But     : Permet d'initialiser la nombre de voiture petites louees
  105.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  106.   ************************************************************************/
  107.  
  108.    public void setmontantJournalierAssurance (double p_montantJournalierAssurance )
  109.     {
  110.      montantJournalierAssurance  = p_montantJournalierAssurance ;
  111.     }       
  112.    /***********************************************************************
  113.   * But     : Permet d'initialiser la nombre de voiture petites louees
  114.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  115.   ************************************************************************/
  116.  
  117.    public void setMontantLocationVoiture (double p_montantLocationVoiture)
  118.     {
  119.      montantLocationVoiture = p_montantLocationVoiture;
  120.     }
  121.     /***********************************************************************
  122.   * But     : Permet d'initialiser la nombre de voiture petites louees
  123.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  124.   ************************************************************************/
  125.  
  126.    public void setMontantTotalLocationVoiture (double p_montantTotalLocationVoiture)
  127.     {
  128.      montantTotalLocationVoiture = p_montantTotalLocationVoiture;
  129.     } 
  130.     /***********************************************************************
  131.   * But     : Permet d'initialiser la nombre de voiture petites louees
  132.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  133.   ************************************************************************/
  134.  
  135.    public void setMontantTPS (double p_montantTPS)
  136.     {
  137.      montantTPS = p_montantTPS;
  138.     } 
  139.     /***********************************************************************
  140.   * But     : Permet d'initialiser la nombre de voiture petites louees
  141.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  142.   ************************************************************************/
  143.  
  144.    public void setMontantTPQ (double p_montantTPQ)
  145.     {
  146.      montantTPQ = p_montantTPQ;
  147.     }
  148.     /***********************************************************************
  149.   * But     : Permet d'initialiser la nombre de voiture petites louees
  150.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  151.   ************************************************************************/
  152.    public void setmontantTotalFacture (double p_montantTotalFacture)
  153.     {
  154.      montantTotalFacture = p_montantTotalFacture;
  155.     }
  156. /*********************************************************************
  157.   * But     : Permet de consulter ou obtenir la marque de la voiture
  158.   * @return marque marque de la voiture
  159.   *********************************************************************/
  160.   public int getNombreJoursLocation()
  161.     {
  162.       return nombreJoursLocation;
  163.     }
  164.    
  165.   /*********************************************************************
  166.   * But     : Permet de consulter ou obtenir la marque de la voiture
  167.   * @return marque marque de la voiture
  168.   *********************************************************************/
  169.   public double getMontantJournalierLocation()
  170.     {
  171.       return montantJournalierLocation;
  172.     }
  173.    
  174.   /*********************************************************************
  175.   * But     : Permet de consulter ou obtenir la marque de la voiture
  176.   * @return marque marque de la voiture
  177.   **********************************************************************/
  178.   public double getMontantJournalierAssurance()
  179.     {
  180.       return montantJournalierAssurance;
  181.     }   
  182.    
  183.   /*********************************************************************
  184.   * But     : Permet de consulter ou obtenir la marque de la voiture
  185.   * @return marque marque de la voiture
  186.   *********************************************************************/
  187.   public double getMontantLocationVoiture()
  188.     {
  189.       return montantLocationVoiture;
  190.     }   
  191.    
  192.   /*********************************************************************
  193.   * But     : Permet de consulter ou obtenir la marque de la voiture
  194.   * @return marque marque de la voiture
  195.   **********************************************************************/
  196.   public double getMontantTotalLocationVoiture ()
  197.     {
  198.       return montantTotalLocationVoiture ;
  199.     }
  200.    
  201.   /*********************************************************************
  202.   * But     : Permet de consulter ou obtenir la marque de la voiture
  203.   * @return marque marque de la voiture
  204.   **********************************************************************/
  205.   public double getMontantTps ()
  206.     {
  207.       return montantTotalLocationVoiture ;
  208.     } 
  209.     /*********************************************************************
  210.   * But     : Permet de consulter ou obtenir la marque de la voiture
  211.   * @return marque marque de la voiture
  212.   **********************************************************************/
  213.   public double getMontantTvq ()
  214.     {
  215.       return montantTvq ;
  216.     } 
  217.   /*********************************************************************
  218.   * But     : Permet de consulter ou obtenir la marque de la voiture
  219.   * @return marque marque de la voiture
  220.   **********************************************************************/
  221.   public double getMontantTotalFacture()
  222.     {
  223.       return montantTotalFacture;
  224.     }
  225.    
  226.    // Calculer le montant total des locations avant les taxes
  227.    void calculerMontantJournalierLocation()
  228.          {
  229.          montantJounalierLocation = ((voiture.obtenirLocaPetite * rabaisPetite) + (voiture.obtenirLocaInterm) + (voiture.obtenirLocaGrande)+(voiture.obtenirLocaMinibus) + (voiture.obtenirLocaSport) + (voiture.obtenirLocaProtegeons * rabaisProtegeons)); 
  230.          }
  231.        
  232.    // Calculer le montant total des assurances avant les taxes
  233.    void calculerMontantJournalierAssurance()
  234.          {     
  235.          montantLocationVoiture =((voiture.obtenirAssuPetite)+ (voiture.obtenirAssuInterm)+ (voiture.obtenirAssuGrande) + (voiture.obtenirAssuMinibus) + (voiture.obtenirAssuSport) + (voiture.obtenirAssuProtegeons));
  236.          }
  237.        
  238.      // Calculer le montant total des locations avant les taxes
  239.     void calculerMontantLocationVoiture()
  240.         {
  241.         montantLocationVoiture =((((nombreJoursLocation * voiture.obtenirNombreVoituresPetitesLouees*((voiture.obtenirLocaPetite * rabaisPetite) + voiture.obtenirAssuPetite))) +
  242.                       ((nombreJoursLocation * voiture.obtenirNombreVoituresIntermediairesLouees * (voiture.obtenirLocaInterm + voiture.obtenirAssuInterm))+
  243.                       ((nombreJoursLocation * voiture.obtenirNombreVoituresGrandeLouees * (voiture.obtenirLocaGrande + voiture.obtenirAssuGrande)) +
  244.                       ((nombreJoursLocation * voiture.obtenirNombreVoituresMinivansLouees* (voiture.obtenirLocaMinibus + voiture.obtenirAssuMinibus)) +
  245.                       ((nombreJoursLocation * voiture.obtenirNombreVoituresSportLouees * (voiture.obtenirLocaSport + voiture.obtenirAssuSport)) +
  246.                       ((nombreJoursLocation * voiture.obtenirNombreVoituresEnvironnmentLouees * (voiture.obtenirLocaProtegeons * rabaisProtegeons) + voiture.obtenirAssuProtegeons))));
  247.           }
  248.      // Montant total location de voiture
  249.     void calculerMontantTotalLocationVoiture ()
  250.         {
  251.         montantTotalLocationVoiture = montantLocationVoiture + montantLocationAssurance;
  252.         }
  253.        
  254.     // Calcul le montant de TPS  
  255.      void calculerMontantTPS()
  256.         {
  257.         montantTPS = montantVente * tauxTPS;
  258.         }
  259.      // Calcul le montant de TVQ
  260.      void calculerMontantTVQ()
  261.         {
  262.         montantTVQ = (montantVente + montantTPS)* tauxTVQ;
  263.         }
  264.      // Calcul le montant total de la facture
  265.      void calculerMontantTotal()
  266.         {
  267.         montantTotalFacture = montantTotalLocationVoiture + montantTPS + montantTVQ;
  268.         }
  269.        
  270.        
  271.   /*********************************************************************
  272.   * But     : Permet d'afficher les informations concernant une instance
  273.   *           de la Classe Personne
  274.   **********************************************************************/   
  275.     public void afficher()
  276.    
  277.             {
  278.             System.out.println(" Pour la catégorie : " );
  279.             System.out.println("Nbr jours de location = " + NombreJoursLocation +"montant journalier location  = "+ MontantJournalierLocation +" montant journalier assurance = " + MontantJournalierAssurance + "montant de location Voiture = "+ MontantLocationVoiture+ "montant total location voiture =  "+ MontantTotalLocationVoiture + " montant de la TPS ="+ MontantTPS + " montant de la TVQ ="+ MontantTVQ + "montant total de la facture =" + MontantTotalFacture);
  280.             NumberFormat formatMonetaire = NumberFormat.getCurrencyInstance(); // format monetaire
  281.             System.out.println(formatDate.format(dateSysteme)); // format de date
  282.             System.out.println();
  283.            
  284.              public static void main(String[] args) {
  285.                
  286.               int nombreJoursLocation;//montant journalier de location
  287.               double montantJournalierLocation; // montant journalier d'assurance
  288.               double montantJournalierAssurance;// montant journalier d'assurance
  289.               double montantLocationVoiture;//montant d'assurance avant taxes
  290.               double montantTotalLocationVoiture; // location et assurance avant taxes
  291.               double montantTPS; // represente le montant de la taxe TPS
  292.               double montantTVQ; // represente le montant de la taxe TVQ       
  293.               double montantTotalFacture; // montant total apres taxes
  294.            
  295.             //Bloc de saisie
  296.                        
  297.             System.out.println("le nombre de jours de location de voitures est de : "+ nombreJoursLocation "." );
  298.             System.out.println();
  299.             System.out.println("le montant journalier de location s'élève a : "+ formatMonetaire.format(montantJournalierLocation));
  300.             System.out.println();
  301.             System.out.println("le montant journalier d'assurance s'élève a : "+formatMonetaire.format(montantJournalierAssurance));
  302.             System.out.println();
  303.             System.out.println("le montant total de location de voiture s'élève a : "+formatMonetaire.format(montantTotalLocationVoiture));
  304.             System.out.println();
  305.             System.out.println("le montant des taxes TPS s'élève a : "+ formatMonetaire.format(montantTPS));
  306.             System.out.println();
  307.             System.out.println("le montant des taxes TQS s'élève a : "+ formatMonetaire.format(montantTQS));
  308.             System.out.println();
  309.             System.out.println("le montant total de la facture s'élève a : "+ formatMonetaire.format(montantTotalFacture));
  310.             System.out.println();
  311.                        
  312.             // Création d'une instance  
  313.             Facture uneFacture = new Facture(nombreJoursLocation,montantJournalierLocation,montantJournalierAssurance,montantLocationVoiture,montantTotalLocationVoiture,montantTPS,montantTQS,montantTotalFacture);
  314.             uneFacture.afficher();
  315.     } 
  316. }


 
l'erreur etant toujours ici et la meme " ) " expected
 

Code :
  1. ((nombreJoursLocation * voiture.obtenirNombreVoituresEnvironnmentLouees * (voiture.obtenirLocaProtegeons * rabaisProtegeons) + voiture.obtenirAssuProtegeons))));


 
merci de m aider svp  :hello:  
 
 
 

Reply

Marsh Posté le 16-04-2006 à 23:28:06    

Déjà, la méthode main() ne doit pas trouver dans le corps de la méthode afficher().

Reply

Marsh Posté le 16-04-2006 à 23:34:48    

tu peux un peu mieux t expliquer car la je comprend pas, noob en programmation stp, merci

Reply

Marsh Posté le 16-04-2006 à 23:42:06    

t'as mis le main() dans la fonction afficher()


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 16-04-2006 à 23:43:26    

Je te conseille la lecture de ce site :
http://penserenjava.free.fr/pens_2 [...] =01#01.020

Reply

Marsh Posté le 17-04-2006 à 00:25:03    

j ai pas besoin de remettre mes variables dans le main car elles sont deja declarées en haut est ce que c est bien ca ?

Reply

Marsh Posté le 17-04-2006 à 00:26:52    

non, il faut mettre la fonction main() à l'extérieur de la fonction afficher()


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-04-2006 à 01:49:49    

a oki merci, tu penses que c est cela qui crée l erreur ? je pense pas quand meme, car j ai toujours le probleme d erreur avec le calcul

Reply

Marsh Posté le 17-04-2006 à 02:49:38    

comment ça tu as encore l'erreur ? aucune fonction n'est définie à l'intérieur d'une autre fonction, et le main ne fait pas exception.je sais pas ou tu as été chercher ça, mais ça m'étonnerait que ce soit ton prof qui t'ai dit de faire comme ça  [:kiki]
poste le code rectifié (ie avec le main à l'extérieur)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-04-2006 à 03:15:38    

je comprend plus rien, tout mes classes je l ai fait ainsi regarde une autre classe
 

Code :
  1. /**
  2. * Write a description of class Billet here.
  3. *  
  4. * @author (your name)  
  5. * @version (a version number or a date)
  6. */
  7. import java.text.NumberFormat;
  8. import java.text.SimpleDateFormat;
  9. import java.util.Date;
  10. public class Personne
  11. {
  12.   // les variables d'instance sont générées pour chaque
  13.         // chaque objet de la classe
  14.        
  15.             //attributs d'instrance
  16.     private String nom; // nom de la personne
  17.     private String prenom; // prenom de la personne
  18.     private int age; // age de la personne
  19.     private String numeroPermisConduire; // numero de permis de conduire de la personne
  20.     private Date dateExpirationPermis; // date d'expiration du permis de la personne                 
  21.        /**
  22.          * chaque constante de classe est partagée entre toutes les instances
  23.          * chaque constante est invariable (final pas modifiable)
  24.          * */
  25.        
  26.        private final static String NOM = "\n Nom\t\t: " ;
  27.        private final static String PRENOM = "\n Penom\t\t: " ;
  28.        private final static String AGE = "\n Age\t\t: " ;
  29.        private final static String NUMEROPERMISCONDUIRE = "\n NumeroPermisConduire\t\t: " ;
  30.        private final static String DATEEXPIRATIONPERMIS = "\n DateExpirationPermis\t\t: ";
  31.      
  32.         // constructeur de classe sans paramètre
  33.      public Personne()
  34.      {
  35.            nom = "";
  36.            prenom = "";
  37.            age = 0;
  38.            numeroPermisConduire="";
  39.            dateExpirationPermis= new Date();
  40.            
  41.      }
  42.    
  43.      public Personne(String n, String p, int a ,String num, Date d )
  44.      {
  45.             nom = n;
  46.             prenom  = p;
  47.             age = a;
  48.             numeroPermisConduire= num;
  49.             dateExpirationPermis= d;
  50.       }
  51.       // constructeur de classe avec arguments
  52.   /*********************************************************************
  53.   * But     : Permet d'initialiser le nom du client
  54.   * * @param p_nom le nom du client
  55.   *********************************************************************/
  56.    public void setNom (String p_nom)
  57.     {
  58.      nom = p_nom ;
  59.     }   
  60.   /*********************************************************************
  61.   * But     : Permet d'initialiser le Prenom du client
  62.   * * @param p_nom le nom du client
  63.   *********************************************************************/
  64.    public void setPrenom (String p_prenom)
  65.     {
  66.      prenom = p_prenom ;
  67.     }     
  68.   /*********************************************************************
  69.   * But     : Permet d'initialiser le Prenom du client
  70.   * * @param p_nom le nom du client
  71.   *********************************************************************/
  72.    public void setAge (int p_age)
  73.     {
  74.      age = p_age ;
  75.     }     
  76.   /*********************************************************************
  77.   * But     : Permet d'initialiser le Prenom du client
  78.   * * @param p_nom le nom du client
  79.   *********************************************************************/
  80.    public void setNumeroPermisConduire (String p_numeroPermisConduire)
  81.     {
  82.      numeroPermisConduire = p_numeroPermisConduire;
  83.     } 
  84.   /*********************************************************************
  85.   * But     : Permet d'initialiser le Prenom du client
  86.   * * @param p_nom le nom du client
  87.   *********************************************************************/
  88.    public void setDateExpirationPermis  (Date p_dateExpirationPermis)
  89.     {
  90.      dateExpirationPermis  = p_dateExpirationPermis ;
  91.     }   
  92.    
  93.   /*********************************************************************
  94.   * But     : Permet de consulter ou obtenir le Nom du client
  95.   * @return nom nom du client
  96.   *********************************************************************/
  97.   public String getNom()
  98.     {
  99.       return nom ;
  100.     }
  101.   /*********************************************************************
  102.   * But     : Permet de consulter ou obtenir le Prenom du client
  103.   * @return prenom prenom du client
  104.   *********************************************************************/
  105.   public String getPrenom()
  106.     {
  107.       return prenom ;
  108.     }   
  109.   /*********************************************************************
  110.   * But     : Permet de consulter ou obtenir l'age du client
  111.   * @return age age du client
  112.   *********************************************************************/
  113.   public int getAge()
  114.     {
  115.       return age ;
  116.     }   
  117.    
  118.   /*********************************************************************
  119.   * But     : Permet de consulter ou obtenir le numero de Permis de Conduire du client
  120.   * @return numeroPermisConduire numeroPermisConduire du client
  121.   *********************************************************************/
  122.   public String getNumeroPermisConduire()
  123.     {
  124.       return numeroPermisConduire ;
  125.     }
  126.    
  127.   /*********************************************************************
  128.   * But : Permet de consulter ou obtenir la date d' expiration du Permis du client
  129.   * @return dateExpirationPermis dateExpirationPermis du client
  130.   *********************************************************************/
  131.   public Date getDateExpirationPermis()
  132.     {
  133.       return dateExpirationPermis;
  134.     }   
  135.    
  136.   /*********************************************************************
  137.   * But     : Permet d'afficher les informations concernant une instance
  138.   *           de la Classe Personne
  139.   *********************************************************************/
  140.   public void afficher ()
  141.     {
  142.       System.out.println(" Voici les informations du client " );
  143.       System.out.println("NOM = " + nom +" PRENOM  = "+ prenom +" AGE = " + age + "Numero de permis de conduire = "+ numeroPermisConduire + "DATE d'EXPIRATION de son permis =  "+ dateExpirationPermis);
  144.     }
  145.    
  146.   /*********************************************************************
  147.   * But     : Instanciation et Invocation des méthodes
  148.   *********************************************************************/
  149.  
  150.   public static void main(String[] args) {
  151.        
  152.  
  153.     // Déclaration des variables
  154.     String nom; // nom de la personne
  155.     String prenom; // prenom de la personne
  156.     int age; // age de la personne
  157.     String numeroPermisConduire; // numero de permis de conduire de la personne
  158.     Date dateExpirationPermis; // date d'expiration du permis de la personne                 
  159.    
  160.    // Bloc de saisie
  161.    System.out.print(" Entrez le Nom du client : " );
  162.    nom = Clavier.lireString();
  163.    System.out.println();
  164.    System.out.print(" Entrez le Prenom du client : " );
  165.    prenom = Clavier.lireString();
  166.    System.out.println();
  167.    System.out.print(" Entrez l'age du client : " );
  168.    age = Clavier.lireInt();
  169.    System.out.println();
  170.    System.out.print(" Entrez le numero de permis de conduire du client : " );
  171.    numeroPermisConduire = Clavier.lireString();
  172.    System.out.println(); 
  173.    System.out.print(" Entrez la date d'expiraion du permis de conduire du client : " );
  174.    String dat = Clavier.lireString();
  175.    Date _date = new Date(dat);
  176.    System.out.println();   
  177.    
  178.    // Création d'une instance  
  179.    Personne unePersonne = new Personne(nom,prenom,age,numeroPermisConduire,_date);
  180.    unePersonne.afficher();
  181.   }
  182. }


 
pourtant elle est se compile tres bien et quand je rentre les donnees il y a pas de probleme j ai un ami qui la fait de cette maniere  
 
 

Code :
  1. /**
  2. * I N F 1 2 5 5
  3. *
  4. * Décrivez votre classe Billet ici.
  5. *  
  6. * @author (votre nom)  
  7. * @version (une date)
  8. *
  9. * (votre code permanent)
  10. * (votre adresse de courriel)
  11. */
  12. public class Billet {
  13.     // variable(s) de classe s'il y a lieu
  14.    
  15.     // variable(s) d'instance s'il y a lieu
  16.    
  17.     // constructeur(s) s'il y a lieu
  18.     // méthode(s) de classe s'il y a lieu
  19.    
  20.     // méthode(s) d'instance s'il y a lieu
  21.    
  22.        // variable(s) de classe
  23.      
  24.    public final double PRIX_ENFANT      = 10.0;
  25.    public final double PRIX_ETUDIANT    = 17.0;
  26.    public final double PRIX_ADULT       = 26.0;
  27.    public final double PRIX_AGE_OR      = 19.0;
  28.    
  29.    
  30.    public  final double PRIX_ENFANT_WEEKEND = 13.0;
  31.    public  final double PRIX_ETUDIANT_WEEKEND = 19.0;
  32.    public  final double PRIX_ADULT_WEEKEND = 21.0;
  33.    public  final double PRIX_AGE_OR_WEEKEND = 29.0;
  34.    
  35.    
  36.    public final static int TOTAL_BILLET= 500;
  37.  
  38.     int nombreBilletEnfant;    // nombre de billets pour le groupe âge enfant
  39.     int nombreBilletEtudiant; // nombre de billets pour le groupe âge étudiant
  40.     int nombreBilletAdulte; // nombre de billets pour le groupe âge adulte
  41.     int nombreBilletAgeOr; // nombre de billets pour le groupe âge d'or
  42.    
  43.    
  44.     int nombreTotalBilletsVendu ;   // nombre total de billet vendu
  45.    
  46.     ///////////////////////////////////////////////////////////////////////////////
  47.     // Fonction:  
  48.     // But     :  
  49.     // Paramètres: - IN :  
  50.     //             - OUT:  
  51.     ///////////////////////////////////////////////////////////////////////////////
  52.     public Billet()
  53.     {
  54.         this.nombreBilletEnfant = 0;
  55.         this.nombreBilletEtudiant = 0;
  56.         this.nombreBilletAdulte = 0;
  57.         this.nombreBilletAgeOr = 0;
  58.         this.nombreTotalBilletsVendu =0;
  59.     }
  60.     ///////////////////////////////////////////////////////////////////////////////
  61.     // Fonction:  
  62.     // But     :  
  63.     // Paramètres: - IN :  
  64.     //             - OUT:  
  65.     ///////////////////////////////////////////////////////////////////////////////
  66.     public Billet(  int nombreBilletEnfant,
  67.                     int nombreBilletEtudiant,
  68.                     int nombreBilletAdulte,
  69.                     int nombreBilletAgeOr)
  70.     {
  71.          this.nombreBilletEnfant= nombreBilletEnfant ;
  72.          this.nombreBilletEtudiant= nombreBilletEtudiant;
  73.          this.nombreBilletAdulte= nombreBilletAdulte;
  74.          this.nombreBilletAgeOr=nombreBilletAgeOr;
  75.     }
  76.     ///////////////////////////////////////////////////////////////////////////////
  77.     // Fonction:  
  78.     // But     : Permet de vérifier s'il y a des billets disponibles.
  79.     //              Retourne true si le nombre maximal de billets  
  80.     //              nombre total de billets vendus est supérieur à 0.
  81.     //              False sinon.
  82.     // Paramètres: - IN :  
  83.     //             - OUT:  
  84.     ///////////////////////////////////////////////////////////////////////////////
  85.     boolean verifierBilletsDisponibles(int nombreTotalBilletsVendus)
  86.     {
  87.         if( (TOTAL_BILLET-nombreTotalBilletsVendus)>0)
  88.             return true;
  89.         else
  90.             return false;
  91.     }
  92.     ///////////////////////////////////////////////////////////////////////////////
  93.     // Fonction:  
  94.     // But     : Permet d'obtenir le nombre de billets enfant (retourne l'attribut
  95.     //          d'instance nombreBilletEnfant).
  96.     // Paramètres: - IN :  
  97.     //             - OUT:  
  98.     ///////////////////////////////////////////////////////////////////////////////
  99.     int obtenirNombreBilletEnfant()
  100.     {
  101.         return nombreBilletEnfant;
  102.     }
  103.     ///////////////////////////////////////////////////////////////////////////////
  104.     // Fonction:  
  105.     // But     : Permet d'obtenir le nombre de billets étudiant (retourne
  106.     //  l'attribut d'instance nombreBilletEtudiant).  
  107.     ///////////////////////////////////////////////////////////////////////////////
  108.     int obtenirNombreBilletEtudiant()
  109.     {
  110.         return nombreBilletEtudiant;
  111.     }
  112.     ///////////////////////////////////////////////////////////////////////////////
  113.     // Fonction:  
  114.     // But     :    Permet d'obtenir le nombre de billets adulte  
  115.     //              (retourne l'attribut d'instance nombreBilletAdulte).
  116.     ///////////////////////////////////////////////////////////////////////////////
  117.     int obtenirNombreBilletAdulte()
  118.     {
  119.         return nombreBilletAdulte;
  120.     }
  121.     ///////////////////////////////////////////////////////////////////////////////
  122.     // Fonction:  
  123.     // But     : Permet d'obtenir le nombre de billets d'âge d'or  
  124.     //          (retourne nombreBilletAgeOr).
  125.     ///////////////////////////////////////////////////////////////////////////////
  126.     int obtenirNombreBilletAgeOr()
  127.     {
  128.         return nombreBilletAgeOr;
  129.     }
  130.     ///////////////////////////////////////////////////////////////////////////////
  131.     // Fonction:  
  132.     // But     : Permet de calculer le nombre total de billets vendus.
  133.     ///////////////////////////////////////////////////////////////////////////////
  134.     void calculerNombreBilletsAchetes ()
  135.     {
  136.        nombreTotalBilletsVendu = nombreBilletEnfant + nombreBilletEtudiant + nombreBilletAdulte + nombreBilletAgeOr;
  137.     }
  138. } // Billet


 
   
mais lui est beaucoup plus doue que moi car il a deja fait de la programmation alors que moi rien

Reply

Marsh Posté le 17-04-2006 à 10:53:45    

et ben, si ton ami est plus doué que toi, ça fait peur quant à ton niveau, parce que ton ami aussi est loin d'être une lumière vu son code :D
un exemple : sa fonction verifierBilletsDisponibles à la ligne 92. on peut la simplifier en une ligne

Code :
  1. boolean verifierBilletsDisponibles(int nombreTotalBilletsVendus)
  2. {
  3.   return (TOTAL_BILLET-nombreTotalBilletsVendus)>0
  4. }


magnifique aussi sa fonction de la ligne 145 ! pourquoi ne pas plutot l'avoir paramétrée au lieu d'y placer son résultat dans une variable membre ?
et je passe sur les conventions de codage non respectées, les variables membres initialisées mais jamais utilisées, etc... bref, pour ton pote et toi, y'a encore du boulot :D
 
bon sinon, c'est quoi ton erreur ?


Message édité par Harkonnen le 17-04-2006 à 10:55:59

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-04-2006 à 10:55:59    

Inconvénient de ta proposition Harko : la méthode est moins facile a debugguer. Ca reste un choix personnel non ?

Message cité 1 fois
Message édité par slash33 le 17-04-2006 à 11:03:04
Reply

Marsh Posté le 17-04-2006 à 10:58:28    

oui mais bon, c'est pas insurmontable non plus :D ! mais si vraiment il tient à conserver la fonction sous sa forme actuelle, ceci suffit aussi :

Code :
  1. boolean verifierBilletsDisponibles(int nombreTotalBilletsVendus)
  2. {
  3.   if( (TOTAL_BILLET-nombreTotalBilletsVendus)>0)
  4.      return true;
  5.   return false;
  6. }


Message édité par Harkonnen le 17-04-2006 à 10:58:44

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-04-2006 à 11:03:52    

Utilité de verifierBilletsDisponibles() non employée dans le code de la classe ? Alors, on s'en fout un peu de savoir comment elle est codée non ?

Reply

Marsh Posté le 17-04-2006 à 11:15:19    

ah oui, j'avais meme pas vu [:ddr555]
en plus, tous ses accesseurs sont en private, vachement pratique pour un accesseur [:ddr555]
finalement, c'est terence qui a l'air plus doué que son pote, ça serait bien qu'il dise l'erreur qu'il a !


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-04-2006 à 11:40:36    

ca va dépendre on va dire :
- si vous voulez pas bosser dans l'info, torcher l'exo pour que ca marche, ca va vite passer
- si vous voulez bosser dans l'info : alors là va falloir se bouger le cul, parce que vous vous préparez des mauvais moments en stage/boulot avec du code pareil...
 
y'a un topic en tete de liste qui s'appelle java pour les débutants...y'a des liens dedans très utiles pour vous


---------------
Jubi Photos : Flickr - 500px
Reply

Marsh Posté le 17-04-2006 à 11:55:40    

Jubijub a écrit :

ca va dépendre on va dire :
- si vous voulez pas bosser dans l'info, torcher l'exo pour que ca marche, ca va vite passer
- si vous voulez bosser dans l'info : alors là va falloir se bouger le cul, parce que vous vous préparez des mauvais moments en stage/boulot avec du code pareil...


1 ère solution sinon il n'aurait pas répété X fois l'entête:

Code :
  1. /*********************************************************************
  2. * But     : Permet d'initialiser le Prenom du client
  3. * * @param p_nom le nom du client
  4. *********************************************************************/

Reply

Marsh Posté le 17-04-2006 à 12:20:16    

ben vu sa structuration par ailleurs, c qu'ils sont débutant...auquel cas qd tu débutes je pense que bien structurer tes commentaires javadoc c pas le premier truc que tu apprends (c déplorable d'ailleurs, les profs d'info n'apprennent pas à commenter son code...pourtant y'a des papiers très bien fait dont un de sun qui illustre un bout de code a priori commenté, et qui le refactorent pour enlever tt les commentaires inutiles, grace à de bon choix de nom de procédures)


---------------
Jubi Photos : Flickr - 500px
Reply

Marsh Posté le 17-04-2006 à 17:46:45    

slash33 a écrit :

Inconvénient de ta proposition Harko : la méthode est moins facile a debugguer. Ca reste un choix personnel non ?


Chuis pas d'accord, tout programmeur qui se respecte connait ce genre d'idiômes (retourner directement une expression booléenne au lieu de la tester et de retourner une valeur correspondant de toute façon à son résultat), c'est pas non plus du perl quoi  [:pingouino]

Jubijub a écrit :

pourtant y'a des papiers très bien fait dont un de sun qui illustre un bout de code a priori commenté, et qui le refactorent pour enlever tt les commentaires inutiles, grace à de bon choix de nom de procédures)


Ya tout un bouquin là dessus aussi [:dawa]
 
Avec un nom complètement éboustriffant vu son sujet [:icon12]


Message édité par masklinn le 17-04-2006 à 17:49:44

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 17-04-2006 à 18:29:40    

en fait j ai trouve la solution tout seul  :bounce:  :bounce:  :bounce:  j ai fait comme ceci, dite moi ce que vous en pensez ??? , pour ce qui est de profs je peux vous le dire que le notre est des plus pourris, nul a chier j apprend plus sur les forums ou sur le livre que le prof lui meme, il t embrouille plus la tete, que autre chose lui meme c est meme pas code il fait des erreurs, alors je peux vous le dire c est pas gagne IoI :hello:  
 

Code :
  1. import java.text.NumberFormat;
  2. import java.text.SimpleDateFormat;
  3. import java.util.Date;
  4. /**
  5. * Cette classe gere le calcul des montants de la facture.  
  6. * Elle contient toutes les informations sur les location de voiture(location)  
  7. * et sur les assurances (assurance).
  8. * Cette classe est publique,  
  9. * les constantes ont une portee de type package (aucun modificateur),  
  10. * les attributs d'instance sont prives et toutes les methodes sont publiques.
  11. *  
  12. * @author (your name)  
  13. * @version (a version number or a date)
  14. */
  15. public class Facture
  16. {
  17.   // declaration des variables
  18.  
  19.         SimpleDateFormat formatDate = new SimpleDateFormat("dd-MM-yyyy" );  // format de date
  20.         Date dateSysteme = new Date(); // Creation d'un objet date
  21.        
  22.     // taux des taxes
  23.     public final double tauxTPS=0.07;
  24.     public final double tauxTVQ=0.075;
  25.     public final double rabaisProtegeons=0.8; //rabais de 20% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Protégeons l’environnement ».
  26.     public final double rabaisPetite=0.85;   //rabais de 15% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Petite                                    //rabais de 15% doit être appliqué sur le montant de location (avant taxes et assurance) des voitures de catégorie « Petite   
  27.    
  28.     //attributs d'instrance
  29.     private int nombreJoursLocation;//montant journalier de location
  30.     private double montantJournalierLocation; // montant journalier d'assurance
  31.     private double montantJournalierAssurance;// montant journalier d'assurance
  32.     private double montantLocationVoiture;//montant d'assurance avant taxes
  33.     private double montantTotalLocationVoiture; // location et assurance avant taxes
  34.     private double montantTPS; // represente le montant de la taxe TPS
  35.     private double montantTVQ; // represente le montant de la taxe TVQ       
  36.     private double montantTotalFacture; // montant total apres taxes
  37.    
  38.    /**
  39.      * Constructor for objects of class Facture
  40.      */
  41.      
  42.     public Facture(Location CetteLocation)
  43.        {
  44.       this.Location =  CetteLocation;
  45.        }
  46.     /**
  47.       * chaque constante de classe est partagée entre toutes les instances
  48.       * chaque constante est invariable (final pas modifiable)
  49.       * */ 
  50.      
  51.    private final static String NOMBREJOURSLOCATION = "\n nombreJoursLocation\t\t: " ;
  52.    private final static String MONTANTJOURNALIERLOCATION= "\n montantJournalierLocation\t\t: " ;
  53.    private final static String MONTANTJOURNALIERASSURANCE= "\n montantJournalierAssurrance\t\t: " ;
  54.    private final static String MONTANTLOCATIONVOITURE = "\n montantLocationVoiture\t\t: " ;
  55.    private final static String MONTANTTOTALLOCATIONVOITURE = "\n montantLocationVoiture\t\t: " ;
  56.    private final static String MONTANTTPS = "\n nombreVoituresSportLouees\t\t: " ;
  57.    private final static String MONTANTTVQ= "\n personneLocataire \t\t: " ; //personne qui loue la voiture
  58.    private final static String MONTANTTOLTALFACTURE = "\n voitureLouee \t\t: " ; //voiture louée
  59.    
  60.    public Facture()
  61.      {
  62.            nombreJoursLocation = 0;
  63.            montantJournalierLocation = 0;
  64.            montantJournalierAssurance = 0;
  65.            montantLocationVoiture = 0;
  66.            montantTotalLocationVoiture = 0;
  67.            montantTps = 0;
  68.            montantTvq = 0;
  69.            montantTotalFacture = 0;
  70.       } 
  71.      
  72.        public Facture (int nj, double ml, double ma, double mv , double mt, double ms, double mq, double mf)
  73.      {
  74.            
  75.            nombreJoursLocation = nj;
  76.            montantJournalierLocation = ml;
  77.            montantJournalierAssurance = ma;
  78.            montantLocationVoiture = mv;
  79.            montantTotalLocationVoiture = mt;
  80.            montantTps = ms;
  81.            montantTvq = mq;
  82.            montantTotalFacture = mf;
  83.         }
  84.        
  85.   /***********************************************************************
  86.   * But     : Permet d'initialiser la nombre de voiture petites louees
  87.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  88.   ************************************************************************/
  89.  
  90.    public void setNombreJoursLocation (int p_nombreJoursLocation)
  91.     {
  92.      nombreJoursLocation = p_nombreJoursLocation ;
  93.     }     
  94.   /***********************************************************************
  95.   * But     : Permet d'initialiser la nombre de voiture petites louees
  96.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  97.   ************************************************************************/
  98.  
  99.    public void setMontantJournalierLocation ( double p_montantJournalierLocation)
  100.     {
  101.      montantJournalierLocation = p_montantJournalierLocation ;
  102.     }       
  103.    /***********************************************************************
  104.   * But     : Permet d'initialiser la nombre de voiture petites louees
  105.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  106.   ************************************************************************/
  107.  
  108.    public void setmontantJournalierAssurance (double p_montantJournalierAssurance )
  109.     {
  110.      montantJournalierAssurance  = p_montantJournalierAssurance ;
  111.     }       
  112.    /***********************************************************************
  113.   * But     : Permet d'initialiser la nombre de voiture petites louees
  114.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  115.   ************************************************************************/
  116.  
  117.    public void setMontantLocationVoiture (double p_montantLocationVoiture)
  118.     {
  119.      montantLocationVoiture = p_montantLocationVoiture;
  120.     }
  121.     /***********************************************************************
  122.   * But     : Permet d'initialiser la nombre de voiture petites louees
  123.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  124.   ************************************************************************/
  125.  
  126.    public void setMontantTotalLocationVoiture (double p_montantTotalLocationVoiture)
  127.     {
  128.      montantTotalLocationVoiture = p_montantTotalLocationVoiture;
  129.     } 
  130.     /***********************************************************************
  131.   * But     : Permet d'initialiser la nombre de voiture petites louees
  132.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  133.   ************************************************************************/
  134.  
  135.    public void setMontantTPS (double p_montantTPS)
  136.     {
  137.      montantTPS = p_montantTPS;
  138.     } 
  139.     /***********************************************************************
  140.   * But     : Permet d'initialiser la nombre de voiture petites louees
  141.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  142.   ************************************************************************/
  143.  
  144.    public void setMontantTPQ (double p_montantTPQ)
  145.     {
  146.      montantTPQ = p_montantTPQ;
  147.     }
  148.     /***********************************************************************
  149.   * But     : Permet d'initialiser la nombre de voiture petites louees
  150.   * * @param p_nombreVoituresPetitesLouees nombreVoituresPetitesLouees
  151.   ************************************************************************/
  152.    public void setmontantTotalFacture (double p_montantTotalFacture)
  153.     {
  154.      montantTotalFacture = p_montantTotalFacture;
  155.     }
  156. /*********************************************************************
  157.   * But     : Permet de consulter ou obtenir la marque de la voiture
  158.   * @return marque marque de la voiture
  159.   *********************************************************************/
  160.   public int getNombreJoursLocation()
  161.     {
  162.       return nombreJoursLocation;
  163.     }
  164.    
  165.   /*********************************************************************
  166.   * But     : Permet de consulter ou obtenir la marque de la voiture
  167.   * @return marque marque de la voiture
  168.   *********************************************************************/
  169.   public double getMontantJournalierLocation()
  170.     {
  171.       return montantJournalierLocation;
  172.     }
  173.    
  174.   /*********************************************************************
  175.   * But     : Permet de consulter ou obtenir la marque de la voiture
  176.   * @return marque marque de la voiture
  177.   **********************************************************************/
  178.   public double getMontantJournalierAssurance()
  179.     {
  180.       return montantJournalierAssurance;
  181.     }   
  182.    
  183.   /*********************************************************************
  184.   * But     : Permet de consulter ou obtenir la marque de la voiture
  185.   * @return marque marque de la voiture
  186.   *********************************************************************/
  187.   public double getMontantLocationVoiture()
  188.     {
  189.       return montantLocationVoiture;
  190.     }   
  191.    
  192.   /*********************************************************************
  193.   * But     : Permet de consulter ou obtenir la marque de la voiture
  194.   * @return marque marque de la voiture
  195.   **********************************************************************/
  196.   public double getMontantTotalLocationVoiture ()
  197.     {
  198.       return montantTotalLocationVoiture ;
  199.     }
  200.    
  201.   /*********************************************************************
  202.   * But     : Permet de consulter ou obtenir la marque de la voiture
  203.   * @return marque marque de la voiture
  204.   **********************************************************************/
  205.   public double getMontantTps ()
  206.     {
  207.       return montantTotalLocationVoiture ;
  208.     } 
  209.     /*********************************************************************
  210.   * But     : Permet de consulter ou obtenir la marque de la voiture
  211.   * @return marque marque de la voiture
  212.   **********************************************************************/
  213.   public double getMontantTvq ()
  214.     {
  215.       return montantTvq ;
  216.     } 
  217.   /*********************************************************************
  218.   * But     : Permet de consulter ou obtenir la marque de la voiture
  219.   * @return marque marque de la voiture
  220.   **********************************************************************/
  221.   public double getMontantTotalFacture()
  222.     {
  223.       return montantTotalFacture;
  224.     }
  225.    
  226.    // Calculer le montant total des locations avant les taxes
  227.    void calculerMontantJournalierLocation()
  228.          {
  229.          montantJounalierLocation = ((voiture.obtenirLocaPetite * rabaisPetite) + (voiture.obtenirLocaInterm) + (voiture.obtenirLocaGrande)+(voiture.obtenirLocaMinibus) + (voiture.obtenirLocaSport) + (voiture.obtenirLocaProtegeons * rabaisProtegeons)); 
  230.          }
  231.        
  232.    // Calculer le montant total des assurances avant les taxes
  233.    void calculerMontantJournalierAssurance()
  234.          {     
  235.          montantJournalierAssurance =((voiture.obtenirAssuPetite)+ (voiture.obtenirAssuInterm)+ (voiture.obtenirAssuGrande) + (voiture.obtenirAssuMinibus) + (voiture.obtenirAssuSport) + (voiture.obtenirAssuProtegeons));
  236.          }
  237.        
  238.      // Calculer le montant total des locations avant les taxes
  239.     void calculerMontantLocationVoiture()
  240.         {
  241.         montantLocationVoiture = nombreJoursLocation + (montantJounalierLocation + montantJournalierAssurance);
  242.           }
  243.      // Montant total location de voiture
  244.     void calculerMontantTotalLocationVoiture ()
  245.         {
  246.         montantTotalLocationVoiture = montantLocationVoiture + montantLocationAssurance;
  247.         }
  248.        
  249.     // Calcul le montant de TPS  
  250.      void calculerMontantTPS()
  251.         {
  252.         montantTPS = montantTotalLocationVoiture * tauxTPS;
  253.         }
  254.      // Calcul le montant de TVQ
  255.      void calculerMontantTVQ()
  256.         {
  257.         montantTVQ = (montantTotalLocationVoiture + montantTPS)* tauxTVQ;
  258.         }
  259.      // Calcul le montant total de la facture
  260.      void calculerMontantTotal()
  261.         {
  262.         montantTotalFacture = montantTotalLocationVoiture + montantTPS + montantTVQ;
  263.         }
  264.       }

Reply

Marsh Posté le 17-04-2006 à 18:59:34    

ben je sais pas si tu comptes utiliser ta classe, mais en l'état, elle ne sert à rien du tout, car  
- toutes les méthodes qui  effectuent des calculs sont en private, et tu ne les appelles même pas de l'intérieur de ta classe, donc ça sert à rien du tout [:petrus dei]
- à quoi servent les variables membres en majuscules  [:petrus dei]
- de même, les variables membres montantxxxx ne servent à rien du tout, tu pourrais les déclarer en variables locales à tes fonctions, et les renvoyer une fois le calcul effectué [:petrus75]
 
un seul mot pour tout ça : nul, nul et archi nul ! comme ton prof apparemment


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-04-2006 à 19:05:29    

regarde je vais mettre le descriptif de la classe et dit moi ce que tu en penses  
 
La classe Facture
Description
Cette classe gère le calcul des montants de la facture.  Cette classe est publique, les constantes, si elles existent, doivent avoir une portée de type package (aucun modificateur), les attributs d’instance sont privés et toutes les méthodes sont publiques.
Membres de classe
Les constantes de taux de taxes.
Membres d’instance
int nombreJoursLocation // montant journalier de location        
double montantJournalierLocation // montant journalier de location        
double montantJournalierAssurance // montant journalier d’assurance
double montantLocationVoiture // montant de location voiture avant taxes
double montantTotalAssurance  // montant d’assurance avant taxes
double montantTotalLocationVoiture  // location et assurance avant taxes
double  montantTps  // montant de la taxe TPS  
double  montantTvq  // montant de la taxe TVQ        
double  montantTotalFacture // montant total après taxes
Constructeur
Facture()  // sans arguments
Facture(double pMontantJournalierLocation,
double pMontantJournalierAssurance, int pNombreJoursLocation)  
// avec arguments
Méthodes d’instance
void calculerMontantLocationVoiture ()
Calcul le montant de location de voiture avant les taxes.  Est calculé en multipliant le montant de location journalier par le nombre de jours de location.  
void calculerMontantTotalAssurance()
Calcul le montant total d’assurance avant les taxes.  Est calculé en multipliant le montant d’assurance journalier par le nombre de jours de location.
void calculerMontantTotalLocationVoiture()
Calcul le montant total de location de voiture avant les taxes.  Est calculé en faisant la somme des montants de location de voitures et le montant d’assurance.
void calculerMontantTps()
Calcul le montant de taxe sur les produits et services.
void calculerMontantTvq()
Calcul le montant de taxe de vente du Québec.
void calculerMontantTotal()
Calcul le montant total de la facture. Est calculé en faisant la somme des montants de location (total), de taxe sur les produits et services et de taxe de vente du Québec.  
void afficher ()  
   Permet d’afficher toutes les informations de la classe Facture.  

Reply

Marsh Posté le 17-04-2006 à 19:07:38    

me decourage pas comme ca, j essais de comprendre et de plus c est vraiment pas facile

Reply

Marsh Posté le 19-04-2006 à 00:02:27    

terrencefr a écrit :

regarde je vais mettre le descriptif de la classe et dit moi ce que tu en penses


ok lol ! nan mais le descriptif on s'en fout hein !
moi ce que je vois, c'est que tu as tout un tas d'accesseurs (getxxx, setxxx) dont tu ne pourras jamais te servir car ils sont en private !
de plus, ce genre de fonction :

Code :
  1. void calculerMontantTotalLocationVoiture ()
  2.        {
  3.        montantTotalLocationVoiture = montantLocationVoiture + montantLocationAssurance;
  4.        }


est totalement ridicule et anti objet ! explique moi son intéret :
- elle est private, donc inutilisable de l'extérieur,
- en l'état elle ne sert donc à rien car non contente d'etre private, tu ne l'appelles jamais dans ta classe
- pourquoi créer une variable membre private, puis lui créer un accesseur, et enfin l'affecter dans une fonction membre ? t'as pas l'impression de dépenser de la mémoire inutilement, alors qu'un simple  

Code :
  1. double calculerMontantTotalLocationVoiture ()
  2.        {
  3.        return montantLocationVoiture + montantLocationAssurance;
  4.        }


suffit largement ?
- les variables mt, ms, mq, mf et autres : à quoi ça sert de les initialiser dans le constructeur, vu que ce sont des variables qui contiennent un résultat calculé dans ta classe, et (normalement) retourné à l'utilisateur ?
 
bref, je veux pas te décourager, mais y'a vraiment du boulot ! et le pire c'est que ce sont des trucs vraiment basiques


Message édité par Harkonnen le 19-04-2006 à 00:03:27

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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