CiaO! Ho da poco iniziato Java e ho dei problemi: Ho fatto due classi..
Sanremo.java
codice:import java.io.*; /* *d */ class Sanremo { private String canzone; //titolo della canzone private int voti; //numero dei voti ricevuti dal pubblico; Sarà poi la giuria a decretare il vincitore //in caso di voti pari. private String categoria; //categoria della canzone G giovani - A adulti - N nuovi talenti private int posizione; //posizione raggiunta InputStreamReader input = new InputStreamReader(System.in); BufferedReader tastiera = new BufferedReader(input); public Sanremo() { canzone = ""; voti = 0; posizione = 0; } public void setCanzone(int i) { System.out.println("Titolo della Canzone numero " + i+1); try { canzone = tastiera.readLine(); } catch(Exception e){} System.out.println("\nCategoria della Canzone numero " + i+1); try { categoria = tastiera.readLine(); } catch(Exception e){} } public void setVoti(int i) { System.out.println("\nVoti della Canzone numero " + i+1); try { String votiS = tastiera.readLine(); voti = Integer.valueOf(votiS).intValue(); } catch(Exception e){} } public void setPosizione(int i) { System.out.println("\nPosizione della Canzone numero " + i+1); try { String votiS = tastiera.readLine(); voti = Integer.valueOf(votiS).intValue(); } catch(Exception e){} } public void getDati() { System.out.println("" + canzone + " (" + categoria + ")-> " + voti + " voti\n"); } public int getPunti() { return voti; } }
ProgSanremo.java
codice:class ProgSanremo { public static void main(String argv[]) { int costante = 6; //Canzoni //Dichiarazione delle Variabili -> Private int tot = 0; //Dichiarazioni degli oggetti Sanremo prima,seconda,terza; Sanremo canzoni[] = new Sanremo[costante]; for(int i=0; i<costante; i++) { canzoni[i] = new Sanremo(); canzoni[i].setCanzone(i); } //Assegno alla prima canzone le 3 posizioni. Si cambieranno, poi prima = canzoni[0]; seconda = canzoni[0]; terza = canzoni[0]; //Calcolo le prime tre posizioni e le ritorno for(int i=0; i<costante; i++) { tot += canzoni[i].getPunti(); int px = canzoni[i].getPunti(); System.out.println(px); if(px > prima && px < seconda) prima = canzoni[i]; else if(px > seconda && px < terza) seconda = canzoni[i]; else if(px > terza) terza = canzoni[i]; } System.out.println("\n\nCLASSIFICA\n\n"); System.out.println("\n\n\t1) " + prima.getDati()); System.out.println("\n\t2) " + seconda.getDati()); System.out.println("\n\t3) " + terza.getDati()); } }
Mi da errori vari:
1) Errore su:
Mi dice che void type not allowed here.. Per tutte e tre le istruzionicodice:System.out.println("\n\n\t1) " + prima.getDati()); System.out.println("\n\t2) " + seconda.getDati()); System.out.println("\n\t3) " + terza.getDati());
E pooi mi da errore in:
e qui mi dice che "operator > o < cannot be applied on int,Sanremo"codice:int px = canzoni[i].getPunti(); System.out.println(px); if(px > prima && px < seconda) prima = canzoni[i]; else if(px > seconda && px < terza) seconda = canzoni[i]; else if(px > terza) terza = canzoni[i];
AIUTOOOOO!!!

Rispondi quotando