Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Java - gestione vettori java
Forum - Java - gestione vettori java

Avatar
luciano.franchin (Normal User)
Newbie


Messaggi: 4
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 18:36
Giovedì, 12/12/2013
ciao, ho provato a sviluppare un codice java con la gestione di un vettore dinamico. non capisco perchè non funziona il ciclo iterativo nella prima scelta. grazie a chiunque riesca ad individuare l'errore logico :)
Codice sorgente - presumibilmente Java

  1. package esercizio_verifica_esercitazione;
  2.  
  3. import java.util.Vector;
  4. import java.io.*;
  5.  
  6. public class Esercizio_verifica_esercitazione {
  7.     public static void main(String[] args) {
  8.         InputStreamReader input = new InputStreamReader(System.in);
  9.         BufferedReader tastiera = new BufferedReader(input);
  10.         String titolo="", letto="";
  11.         double prezzo=0.0, somma=0.0;
  12.         Libro libro;
  13.         int sc=0;
  14.         boolean end=false;
  15.         Vector elenco = new Vector(0,1);
  16.         do
  17.         {
  18.         System.out.println("scegliere opzione:");
  19.         System.out.println("1-input");
  20.         System.out.println("2-controllo prezzi");
  21.         System.out.println("3-uscire");
  22.         try
  23.         {
  24.            letto=tastiera.readLine();
  25.            sc=Integer.valueOf(letto).intValue();
  26.         }
  27.         catch(Exception e){}
  28.         switch(sc)
  29.         {
  30.             case 1:
  31.             {
  32.         System.out.println("inserire * nel campo titolo per terminare il ciclo;");
  33.         do
  34.         {
  35.             System.out.println("titolo:");
  36.             try
  37.             {
  38.                 titolo=tastiera.readLine();
  39.             }
  40.             catch(Exception e)
  41.             {return;}
  42.             System.out.println("prezzo:");
  43.             try
  44.             {
  45.                 letto=tastiera.readLine();
  46.                 prezzo=Double.valueOf(letto).doubleValue();
  47.             }
  48.             catch(Exception e)
  49.             {return;}
  50.            
  51.             if(titolo.equals("*"))
  52.             {end=true;}
  53.             else
  54.             {
  55.                 libro = new Libro(titolo, prezzo);
  56.                 elenco.addElement(libro);
  57.             }
  58.         }
  59.         while (end=false);
  60.         break;
  61.             }
  62.             case 2:
  63.             {
  64.                 for(int i=0; i<elenco.size(); i++)
  65.                 {
  66.                     libro = (Libro) elenco.elementAt(i);
  67.                     somma+=libro.getPrezzo();
  68.                 }
  69.                 double media=somma/elenco.size();
  70.                 System.out.println("Elementi con prezzo superiore media: "+media);
  71.                 for(int i=0; i<elenco.size(); i++)
  72.                 {
  73.                     libro = (Libro) elenco.elementAt(i);
  74.                     if(libro.getPrezzo()>=media)
  75.                     {
  76.                         System.out.println("Titolo: "+libro.getTitolo()+" Prezzo: "+libro.getPrezzo());
  77.                     }
  78.                 }
  79.                 break;
  80.             }
  81.             default: {break;}
  82.           }
  83.         } while (sc!=3);
  84.     }
  85. }


PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 19:05
Giovedì, 12/12/2013
Codice sorgente - presumibilmente Java

  1. while (end=false);



:nono:

Codice sorgente - presumibilmente Plain Text

  1. while(end == false);



C'e' differenza tra l'operatore = e ==.

A parte il resto, questo e' poi assolutamente da evitare:

Codice sorgente - presumibilmente Java

  1. try
  2. {
  3.           // codice....
  4. }
  5. catch(Exception e){}



E se succede un errore come te ne accorgi? :nono:


Il mio blog: https://piero.dev
PM Quote