Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    72

    [JAVA] Problema con stringa

    Ragazzi ho il seguente problema,
    mandando in esecuzione il seguente codice

    /*Un oggetto Quadrato rappresenta un quadrato in uno spazio
    * bidimensionale, i cui lati sono entrambi paralleli agli
    * assi cartesiani del piano*/
    class Quadrato {
    public static void main(String[] args) {
    Quadrato q;
    private Punto vbs; //Vertice in basso a sinistra
    private Punto vad; //Vertice in alto a destra
    /*Crea un nuovo quadrato tra i punti p1 e p2*/
    public Quadrato (Punto p1, Punto p2){
    //pre1!= null && p2!null
    this.vbs = new Punto (Math.min(p1.getX(),p2.getX()), Math.min(p1.getY,p2.getY()));
    this.vad = new Punto (Math.max(p1.getX(),p2.getX()), Math.max(p1.getY,p2.getY()));
    }
    /*Crea un quadrato che è inizialmete uguale al quadrato q*/
    public Quadrato(Quadrato q) {
    //pre:r != null
    this.vbs = new Punto(r.vbs);
    this.vad = new Punto(r.vad);
    }
    /*Calcola un lato del quadrato*/
    public double lato() {
    return vad.getX() - vbs.getX();
    }
    /*Calcola l'area del quadrato*/
    public double area() {
    return this.lato() * this.lato();
    }
    /*Trasla il quadrato di dx in orizzontale e in dy in verticale*/
    public void trasla(double dx, double dy) {
    vbs.trasla(dx, dy);
    vad.trasla(dx, dy);
    }
    /*Verifica se questo quadrato è uguale al quadrato q*/
    public boolean equals (Quadrato r) {
    //pre4: r!=null
    return(this.vbs.equals(r.vbs)) && (this.vad.equals(r.vad));
    }
    /*Restituisce una descrizione di questo quadrato*/
    public String toString() {
    return"Quadrato [vbs = "+ vbs.toString() +", vad = " + vad.toString() +"]";
    }
    /*Calcola il quadrato intersezione tra q1 e q2. Restituisce null se
    * l'intersezione è vuota.*/
    public static Quadrato intersezione(quadrato q1, Quadrato q2) {
    //pre:r1!= null && r2 != null
    Quadrato inters;
    if(r1.vbs.getX()>r2.vad.getX() || r1.vbs.getY()>r2.vad.getY() ||
    r1.vbs.getX()<r2.vad.getX() || r1.vbs.getY()<r2.vad.getY())
    inters= null;
    else
    inters = new Quadrato(
    new Punto(Math.max(r1.vbs.getX(), r2.vbs.getX()),
    Math.max(r1.vbs.getY(), r2.vbs.getY())),
    new Punto(Math.min(r1.vad.getX(), r2.vad.getX()),
    Math.min(r1.vad.getY(), r2.vad.getY())));
    return inters;
    }
    }
    }


    mi da i seguentu errori:
    java:7: illegal start of expression
    private Punto vbs; //Vertice in basso a sinistra

    java:8: illegal start of expression
    private Punto vad; //Vertice in alto a destra

    java:10: illegal start of expression
    public Quadrato (Punto p1, Punto p2){

    java:59: ';' expected
    }

    non riesco a trovare una soluzione!!!!!!!!!!!!HELP!!!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA] Problema con stringa

    Originariamente inviato da elpepe
    non riesco a trovare una soluzione!!!!!!!!!!!!HELP!!!
    Il sorgente è parecchio fuori "quadro" .... nel senso che hai messo dentro il main() tutto quanto ovvero variabili di istanza, costruttori e metodi!!!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    72
    e quindi come posso farlo???

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    72
    c'è qualcuno che può aiutarmi????

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da elpepe
    c'è qualcuno che può aiutarmi????
    Ma scusa ... guarda che qui si tratta poi solo di questioni davvero basilari!!! E che dovresti già sapere. Cioè almeno, il minimo, come si scrive correttamente una classe con i suoi campi, costruttori e metodi.

    Hai fatto una classe Quadrato, con dei costruttori e dei metodi di istanza. Hai anche di certo fatto una classe Punto, che però non hai postato (e quindi non so come è ... se a posto o no).

    Ma di questa classe Quadrato (e di Punto) dovrai pur creare degli oggetti ... per fare qualcosa di "reale", pratico insomma, no? Cioè ... cosa deve fare il tuo programma? Che so .... chiedere in input all'utente dei punti, creare degli oggetti Quadrato e calcolare ad esempio la loro intersezione? O leggere da un file di testo i dati di più quadrati, creare gli oggetti Quadrato e stamparli ordinati per area?

    Per dirla in altro modo ... la tua classe Quadrato (sebbene al momento non "quadra" come struttura), da sola non serve a niente .... quindi: cosa devi fare? come devi usarla?

    Innanzitutto quindi sistema questa classe Quadrato, mettendo campi/costruttori/metodi nel posto "giusto".
    Poi appunto spiega cosa devi fare e a quel punto potresti fare un'altra classe es. ProvaQuadrati che ha il metodo statico main() e in cui farai "qualcosa" di concreto con degli oggetto Punto/Quadrato.

    Io l'aiuto te l'ho dato, spiegandoti che la struttura di quella classe è parecchio sbagliata. Non so quale aiuto vuoi di più ... visto che non hai spiegato che cosa ci devi fare con queste classi!!


    E già che ci sono, ti segnalo che hai messo un metodo:

    public boolean equals (Quadrato r) { ... }

    Se volevi fare l'override del "vero" equals() di Object, il parametro deve essere Object, non Quadrato!!!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.