Aiuto Java

di il
7 risposte

Aiuto Java

Qualcuno potrebbe aiutarmi a scrivere questi programmi? li ho fatti ma non avendo una soluzione cerco un riscontro! Grazie in anticipo

Definire la classe Triangolo per istanziare oggetti che rappresentano triangoli sul piano cartesiano con tre punti v1, v2, v3 e con opportuni costruttori e metodi d’istanza tra cui un metodo con prototipo boolean equals(Triangolo 1) per la verifica di uguaglianza.
Definire un metodo con prototipo boolean verificaIsoscele(Triangolo t) per verificare se un triangolo (per ipotesi è ammissibile) è un triangolo isoscele.

7 Risposte

  • Re: Aiuto Java

    Scrivili tu così qualcuno ti dice se vanno bene, inoltre sappi che nel fare o programmi ci sono molti modi per ottenere lo stesso risultato, quindi non per forza se il tuo è diverso da un altro hai sbagliato!


    Inviato dal mio iPhone utilizzando Tapatalk
  • Re: Aiuto Java

    Mostraci il codice che hai scritto tra i tag giusti e noi possiamo dirti se è giusto o meno visto che hai detto che hai già scritto una soluzione.

    In questo modo come possiamo aiutarti?
  • Re: Aiuto Java

    /* Classe punto per istanziare oggetti */
    class Punto{
    /* variabili d'istanza*/
    private double x;
    private double y;
    /*Costruttore*/
    public Punto(double x, double y){
    this.x=x;
    this.y=y;
    }
    /*Metodi d'istanza*/
    public double getX(){
    return this.x;
    }
    public double getY(){
    return this.y;
    }
    public void setX(double xx){
    this.x=xx;
    }
    public void setY(double yy){
    this.y=yy;
    }
    public boolean equals(Punto p){
    return ((this.x==p.x) && (this.y==p.y));
    }
    public String toString(){
    return "(x="+this.getX()+",y"+this.getY()+")";
    }
    }


    class Triangolo{
    /*variabili d'istanza*/
    private Punto v1;
    private Punto v2;
    private Punto v3;
    /*Costruttore*/
    public Triangolo(Punto a, Punto b, Punto c){
    this.v1=a;
    this.v2=b;
    this.v3=c;
    }
    /*metodi d'istanza*/
    public Punto getV1(){
    return this.v1;
    }
    public Punto getV2(){
    return this.v2;
    }
    public Punto getV3(){
    return this.v3;
    }
    public void setV1(Punto x){
    this.v1=x;
    }
    public void setV2(Punto y){
    this.v2=y;
    }
    public void setV3(Punto z){
    this.v3=z;
    }
    public boolean equals(Triangolo t){
    return ( this.getV1().equals(t.getV1()) )&&( this.getV2().equals(t.getV2()) ) && ( this.getV3().equals(t.getV3()) );
    }
    }


    class VerificaIsoscele{
    public static void main (String[] args){
    Punto v1,v2,v3;
    Triangolo t;
    v1=new Punto(2,1);
    v2=new Punto(4,1);
    v3=new Punto(4,3);
    t=new Triangolo(v1,v2,v3);
    System.out.println("Il triangolo descritto da"+t.toString()+
    "e' iscoscele?"+verificaIsoscele(t));
    }//end main

    /*Metodo verifica isoscele*/
    public static boolean VerificaIscoscele(Triangolo t){
    double d1;
    double d2;
    d1=Misuratore.distanza(v1,v3);
    d2=Misuratore.distanza(v2,v3);
    return (d1==d2);
    }

    /*Misuratore*/
    class Misuratore{
    public double distanza(double p1x, double p1y, double p2x, double p2y){
    double qd; //quadrato della distanza p1-p2
    double d; //distanza p1-p2
    qd=(p1x-p2x)*(p1x-p2x)+(p1y-p2y)*(p1y-p2y);
    d=Math.sqrt(qd);
    return d;
    }
    }

    }//end class
  • Re: Aiuto Java

    Per la classe triangolo e la classe punto nulla da dire, dovrebbe essere tutto giusto dando uno sguardo veloce.

    Per quanto riguarda il main innanzitutto perchè fare un metodo static quando puoi magari renderlo un metodo della classe triangolo (es. triangolo.isIsoscele() che ti ritorna true o false). Per quanto riguarda quest ultimo metodo però c'è da capire una cosa...Quando tu crei un triangolo lo crei assegnando i vertici con una certa logica o no? Perchè come hai impostato tu il metodo vedo che c'è corrispondenza tra vertici, dove già sai che v3 rappresenta l'eventuale vertice alto del triangolo quando poi senza logica potrebbe essere che magari il vertice alto sia v1 e le distanze uguali siano (v1, v2) e (v1, v3)

    Anche Misuratore potrebbe tranquillamente diventare un metodo della classe triangolo che ti ritorna la distanza tra due punti dandoglieli in input....

    Non so se sono stato chiaro...fammi sapere
  • Re: Aiuto Java

    Ho creato il main perchè negli altri esercizi simili a questo il metodo di verifica è sempre inserito in un main, perciò credo la prof lo voglia scritto in questo modo. Comunque se ho capito bene la tua domanda riguardo i vertici del triangolo: sì, li ho assegnati con una certa logica.
  • Re: Aiuto Java

    Vabbè allora si, dovrebbe andare tutto bene
  • Re: Aiuto Java

    Ok, ti ringrazio
Devi accedere o registrarti per scrivere nel forum
7 risposte