Oppure

Loading
21/05/08 15:16
biricchina1234
we io ho lo stesso tuo problema con il vettore mi da sempre errore..se riesci a risolverlo dammi un consiglio..... :-| ;)
aaa
22/05/08 21:09
buzzicotta
#include <iostream.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

class quadrato 
{ 
   private:
    int lato;
   public:

      quadrato();
      void leggi_lato(); 
      int perimetro();
      int area();
      int calcola_max();
};

quadrato::quadrato()
{
   int lato;
   lato=0;

}

void quadrato::leggi_lato()
{
    cin>>lato;

}

int quadrato::perimetro()
{ 
   return lato*4;
}

int quadrato::area()
{ 

   return lato*lato;

}

int calcola_max(int vet[])
{ 
   int max=0; 
    
   for(int i=1;i<4;i++)
   { 
      if(vet[max]<vet[i])
      { 
         max=i;
      } 
   } 
   return max; 
} 

int main() 
{
   quadrato q[4];
   int perimetri[4]; 
   int aree[4]; 
   int max_p; 
   int max_a; 


          for(int i=0;i<4;i++)
          {
               cout<<"lato del quadrato numero "<<i+1<<" e': ";
               q[i].leggi_lato();
               cout<<"\n perimetro:"<<q[i].perimetro();
               cout<<"\n area:"<<q[i].area();
               cout<<"\n\n";
               perimetri[i]=q[i].perimetro(); 
               aree[i]=q[i].area();
          }
      max_p=calcola_max(perimetri);
      max_a=calcola_max(aree);

       if(max_p==max_a) 
       {
             cout<<"Il quadrato numero "<<max_p+1<<" ha il perimetro ("<<perimetri[max_p]<<") piu' grande.\n\n";
             cout<<"Il quadrato numero "<<max_p+1<<" ha l'area ("<<aree[max_a]<<") piu' grande\n\n";
       }else
   { 
      cout<<"Il perimetro piu' grande ("<<perimetri[max_p]<<") è del quadrato numero "<<max_p+1<<" \n mentre l'area maggiore ("<<aree[max_a]<<") e' del quadrato numero "<<max_a<<"\n\n";
   } 
   system("PAUSE");
} 

sono venuta a capo di questo enigma ma accetto volentieri consigli per un'implementazione più efficiente..grazie 1000 di tt
aaa