Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152

    [Java] Dettare operazione dalla tastiera con String o Char

    Salve sto facendo pratica con Java e ho creato un applicazione che, avendo un piano cartesiano e leggendo i numeri dalla tastiera, il calcolatore calcola area, perimetro e volume. Tutto è andato liscio fin quando mi è venuta un idea. Vorrei fare in modo che scrivendo "volume" il programma mi calcoli soltanto il volume, lo stesso per perimetro e area. Ho molti dubbi su come e quando usare "Char" e "String" o se nel mio caso c'è bisogno di altri oggetti a me sconosciuti.

    qui vi faccio vedere il lavoro svolto fin ora mi scuso da subito ma nn so fare i tag
    questo è il progetto cubo che calcola perimetro ecc...
    [OT]import fiji.io.*;
    class cubo{
    public static void main (String[] args){
    double x1, y1, z1,x2,y2,z2, lato,k;
    double perimetro, area, volume, base;
    x1= Lettore.in.leggiDouble();
    y1= Lettore.in.leggiDouble();
    z1= Lettore.in.leggiDouble();
    x2= Lettore.in.leggiDouble();
    y2= Lettore.in.leggiDouble();
    z2= Lettore.in.leggiDouble();
    lato= Misuratore.misuratore(x1,y1,z1,x2,y2,z2);
    base= lato*lato;
    perimetro= lato*14;
    area = lato*lato*lato;
    volume= base*lato;
    System.out.println(perimetro);
    System.out.println(area);
    System.out.println(volume);
    }
    } [/OT]

    La classe misuratore l ho creata per calcolare la distanza fra i punti credo che nn sia necessaria taggarla Grazie mille in anticip

  2. #2
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    Per i tags, in realtà tu non devi inserire nulla "a mano": nell'editor di un post, subito sopra l'area di testo trovi tutto quello che ti serve.

    Non mi è chiaro esattamente cosa calcoli... Se
    base = lato * lato
    e
    area = lato * lato * lato
    allora
    volume = base * lato = lato * lato * lato = area ???
    E poi: perimetro = lato * 14?
    Non so qual è il problema che intendi risolvere, ma mi sembra ci sia qualcosa che non torna...

    Comunque, in merito alla tua domanda, puoi implementare una cosa di questo tipo:

    codice:
    String operazione = Lettore.in.leggiString();
    
    if (operazione.equals("perimetro"))
    {
      // calcola il perimetro
    }
      else if (operazione.equals("area"))
    {
      // calcola l'area
    }
    else if (operazione.equals("volume"))
    {
      // calcola il volume
    }
    else
    {
      // segnala l'errore e esci
    }
    Evidentemente, se non già presente devi implementare il metodo leggiString() nella classe Lettore

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152
    Stupendo! grazie mille!
    il " .equals" lo posso usare anche per altri parametri?
    Cmq riguardo il programma ho immaginato un cubo disegnato su un foglio dove il perimetro è semplicemente il segno della penna, la base l ho considerata cm l area di un singolo quadratino, il perimetro è lato per 14 poichè se apri il cubo a forma di croce sn 14 i lati significativi per contare il perimetro, cmq l importante era scoprire questo .equals! grazie ancora!

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da keykode20
    cmq l importante era scoprire questo .equals!
    Sono le basi della programmazione Java... Su cosa stai studiando?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152
    si sto studiando proprio fondamenti di informatica programmazione in Java, ma studiare dal libro mi urta perchè è spiegato malissimo quindi preferisco imparare le cose provando e sbattendo la testa e rompendo le scatole sui forum
    cmq questo .equals ancora nn l ho incontrato forse è citato piu avanti! ho appena iniziato.

  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da keykode20
    cmq questo .equals ancora nn l ho incontrato forse è citato piu avanti! ho appena iniziato.
    Curiosità, perché lo continui a chiamare .equals? Il metodo si chiama equals, il . (punto) serve all'oggetto per chiamare il metodo...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152
    si lo so però .equals ha piu fascino
    domanda da niubbo
    operazione.equals
    l oggetto è operazione
    equals è il metodo giusto?

  8. #8
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569
    Vabbe', ma comunque non capisco perchè volume e area siano uguali...

    Il .equals come lo chiami tu (secondo me, comunque, è più "affascinante" scrivere equals() ) è un metodo della classe Object e ti permette di confrontare due oggetti dello stesso tipo. Prima di usarlo indiscriminatamente, però, ti suggerisco di arrivare a quel capitolo del tuo manuale: per esempio, se ti crei tu una classe devi implementarlo opportunamente, non è che funziona in automatico.

    Per rispondere alla tua domanda, "operazione" è il componente su cui richiami il metodo "equals": non voglio confonderti, ma tieni presente che prima del punto potrebbe anche esserci una classe, non per forza un oggetto. Approfondirai questi concetti quando studierai il modificatore "static"

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152
    volume e aria sono uguali perchè mi sono sbagliato cmq mi metto a studiare cosi ci capisco qualcosa di piu và :P cmq ammetto che equals() ha piu stile! a sto punto ti propongo .equals()!

  10. #10
    Utente di HTML.it L'avatar di desa
    Registrato dal
    Oct 2008
    Messaggi
    569


    Comunque, dimenticavo: se ti trovi male con il libro che stai usando, cambialo. Online c'è un sacco di roba (vedi anche solo la guida di html.it), ma credo che per iniziare un buon libro sia di grandissimo aiuto. Ai tempi dell'università usavo il Savitch (in inglese, ma immagino che in 10 anni l'abbiano tradotto...), mentre recentemente in ufficio ho avuto modo di dare un'occhiata al Manuale di Java 6 di Claudio De Sio Cesari, che mi sembrava fatto bene.
    In ogni caso, se fai un salto in libreria avrai sicuramente modo di sfogliare e confrontare vari testi...

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.