Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme d'execution de ton programme

    21 octobre 2008 à 20:50:17

    Slt à tous j'ai un petit probleme avec mon script .
    ça compile mais quand j'execute ça me met un bleme d'adresse.
    #include <iostream.h>
    
    class Note
    {
    		float note;
          int flag;
    	public:
    		void input();
       	void print();
       	void set(float);
       	float get();
    };
    


    le fichier note.h
    #include <iostream.h>
    #include "note.h"
    void Note::input()
    {   flag=1;
       do{
     		cout<<"Entrer la note";
     		cin>>note;
          	if(note<0 || note > 20)
          	{
           		cout<<"Entrer valeur comprise entre 0 et 20";
           		flag=0;
          	}
    
    
    
       	}while(flag==0);
    }
    
    void Note::print()
    {
    	if (flag == 1)
    		cout<<note<<"\n";
    
    
    }
    
    void Note::set(float valeur)
    {
    	if (flag == 1)
       {
       	cout<<"Entrer la nouvelle valeur";
       	note=valeur;
       }
    }
    
    float Note::get()
    {
      if (flag == 1)
      	return (note);
    
    }
    
    
    
    float moyenne(Note promo[],int nbrEleve)
    {
    	float somme;
      for(int i=0;i<=nbrEleve;i++)
         somme +=promo[i].get();
    
      return (somme/nbrEleve);
    }
    
    int appreciation(float n)
    {
    	if(n<10)
       {
       	cout<<"insuffisant";
        return 1;
       }
       if(n<14)
       {
       	cout<<"passable";
          return 1;
       }
       else
       	cout<<"très bien";
    }
    


    note.cpp

    #include <iostream.h>
    #include "note.cpp"
    #include <stdlib.h>
    
             
    
    int main()
    {
     Note n,*promo;
    
     int nbrEleve=0;
     cout<<"Entrer le nombre d'élève : ";
     cin>>nbrEleve;
    //***************************************
     promo = new Note[nbrEleve];
    
     for(int i=0 ; i<nbrEleve ; i++)
     	promo[i].input();
    
      for(int i=0 ; i<nbrEleve ; i++)
       promo[i].print();
    
    
    
      cout<<moyenne(promo,nbrEleve);
    
     system("pause");
    
    
    }
    
    • Partager sur Facebook
    • Partager sur Twitter
    Si vous voulez aller vite, partez seul; si vous voulez aller loin, faites-vous accompagner
      21 octobre 2008 à 23:14:14

      Tu ABUSES de détails ! Franchement, c'est hyper détaillé ! Oh j'arrive pas y croire ...
      Non mais sérieusement, décris "blème d'adresse". On n'est PAS des devins pour autant.

      EDIT: De plus il y a une grande faille de mémoire dans ton prog'
      • Partager sur Facebook
      • Partager sur Twitter
        22 octobre 2008 à 12:23:36

        En effet tu alloue dynamiquement de la mémoire (new) sans la liberer (delete).
        • Partager sur Facebook
        • Partager sur Twitter
          23 octobre 2008 à 9:57:00

          Oui, erreur de frappe désolé
          • Partager sur Facebook
          • Partager sur Twitter

          Probleme d'execution de ton programme

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown