venerdì 9 luglio 2010

esercizio6

package esercizio4recupero;


//esercizio:

//Definire il metodo statico( metodo di classe) Greater nella classe Circonference.
//Il metodo prende come parametri due cerchi2D e restituisce un int che vale
//zero se i due cerchi hanno area uguale, +1 se il primo ha area > del secondo,
//-1 se ha area < del secondo.


//esercizio 1:

//Nella classe Circumference definire un metodo
//statico che prende come parametri
//due cerchi2D e restituisce un cerchio2D
//eguale a quello con l'area maggiore.

//esercizio 2:

//Nella classe Circumference definire un metodo statico che
//prende come parametri
//due cerchi2D e restituisce una copia del
//cerchio2D eguale a quello con l'area maggiore.

//esercizio 3:

// nella classe cerchio2D risulta quindi comodo avere un
//costruttore che come parametro prende un Cerchio2D
//e crea un oggetto uguale
//esrcizio4:

//Definire un metodo che si chiama CircleCopy che
//come parametro prende un Cerchio2D
//e restituisce una copia di questo cerchio.





public class Circunferences {



public static Cerchio2D CerchioMaggiore (Cerchio2D c1, Cerchio2D c2){
c1.area=Math.PI*(c1.radius*c1.radius);
c2.area=Math.PI*(c1.radius*c1.radius);



if(c1.area>c2.area ){
return c1;}


else if (c1.area return c2;}
return c1;
}


public static Cerchio2D copyCerchioMaggiore(Cerchio2D c1, Cerchio2D c2){


// DA QUALCHE PARTE INVOCO new Cerchio2D()!!!!!
Cerchio2D c3;
// SELEZIONARE CERCHIO CON AREA MAGGIORE
if(c1.area>=c2.area ){
// nuovo cerchio eguale a c1
c3 = new Cerchio2D( c1.getCenter() ,c1.radius);
}

if(c2.area>c1.area ){
// nuovo cerchio eguale a c1
c3 = new Cerchio2D( c2.getCenter() ,c2.radius);
return c3;
}

return null;

}



// definire un metodo che si chiama perimetroCerchio
// che prende come parametro un cerchio e restituisce un
// double che rappresenta il suo perimetro

public double PerimetroCerchio(Cerchio2D c6){
double perimetro;
perimetro=(Math.PI*2)*c6.radius;
return perimetro;
}
//definire il metodo perimetroMaggiore che prende
// come parametri due Cerchi2D e restituisce il perimetro maggiore

public double PerimetroMaggiore(Cerchio2D a1, Cerchio2D a2){

if(a1.perimetro >a2.perimetro){return a1.perimetro;}
if(a2.perimetro >=a1.perimetro){return a2.perimetro;}
return 0.0;

}




//definire il metodo cerchioPerimetroMaggiore che prende
// come parametri due Cerchi2D e restituisce una copia del cerchio
// con perimetro maggiore

public double CerchioPerimetroMaggiore(Cerchio2D b1, Cerchio2D b2){
Cerchio2D b3;
if(b1.perimetro>=b2.perimetro ){
b3=new Cerchio2D(b1.getCenter(),b1.radius);
}

if(b2.perimetro>b1.perimetro ){

b3 = new Cerchio2D( b2.getCenter() ,b2.radius);
return b3.perimetro;
}

return 0.0;



}






}

Nessun commento:

Posta un commento