Domanda error: illegal start of expression NETBEANS

Stato
Discussione chiusa ad ulteriori risposte.
Che hai fatto un errore di sintassi. Se vuoi un aiuto in più posta parte del codice e scrivi su che riga ti da errore.
 
array2.java



package array2;


import java.util.Scanner;


public class Array2 {
public static void main(String[] args) {
int eu[]={29,34,25,24,21}; // età e numero degli uomini
int ed[]= {28,30,32,24,20}; //età e numero delle donne
System.out.println("Scegli un opzione");
System.out.println("1.chiedi quanta gente c'è");
System.out.println("2.chiedi quanti uomini ci sono");
System.out.println("3.chiedi quante donne ci sono");
System.out.println("4.chiedi l'età degli uomini");
System.out.println("5.chiedi l'età delle donne");
System.out.println("6.chiedi l'età media degli uomini");
System.out.println("7.chiedi l'età media delle donne");
System.out.println("8.chiedi l'età media di tutti");
int dec;
Scanner in= new Scanner(System.in);
System.out.println("");
dec=in.nextInt();
NewClass x = new NewClass(eu,ed);
switch(dec){
case 1:
System.out.println(x.getNumPersone());
case 2:
System.out.println(x.getNumUomini());
case 3:
System.out.println(x.getNumDonne());
case 4:
System.out.println(x.EtaUomini()); // errore
case 5:
System.out.println(x.EtaDonne()); // errore
case 6:
System.out.println(x.getMediaUomini());
case 7:
System.out.println(x.getMediaDonne());
case 8:
System.out.println((x.getMediaDonne()+x.getMediaUomini())/2);
// faccio la media di delle età di uomini e donne
}

}
}

NewClass.java


package array2;




public class NewClass {
int a[],b[];
public double toteu=0,toted=0;
//toteu è il totale delle età degli uomini
//toted è il totale delle età delle donne
NewClass(int eu[],int ed[]){
a=eu;
b=ed;
}
public int getNumPersone(){
return a.length+b.length;
} //ottengo il numero di uomin+ quello delle donne
public int getNumUomini(){
return a.length;
} //ottengo il numero degli uomini
public int getNumDonne(){
return b.length;
} // ottengo il numero delle donne
public void EtaUomini(){
for(int num=0;num>a.length;num++){
System.out.println(a[num]);
}//faccio scrivere l'età di tutti gli uomini
}
public void EtaDonne(){
for(int nums=0;nums>b.length;nums++){
System.out.println(b[nums]);
}//faccio scrivere l'età di tutte le donne
}
public double getMediaUomini(){
for(int num=0;num>a.length;num++){
toteu=toteu+a[num];
}
return toteu/a.length;
}//faccio la media delle età degli uomini
public double getMediaDonne(){
for(int nums=0;nums>a.length;nums++){
toted=toted+b[nums];
}
return toted/b.length;
}//faccio la media delle età delle donne
}
 
Ultima modifica:
Stai cercando di stampare un void: il metodo EtaDonne stampa a schermo l'età delle donne e non ritorna niente. Per risolvere o togli System.out.println lasciando solo x.EtaDonne(); oppure modifichi EtaDonne in modo che ti ritorni un array di int, poi ti preoccupi di stamparlo nello switch-case che hai nel main.
Tutto quello che ho detto vale anche per EtaUomini.

Un altro errore che mi è saltato all'occhio è che non stai mettendo i brake nei vari case. È consentito farlo, ma se non li metti entri automaticamente anche in tutti i case sotto a quello in cui sei entrato. In pratica se non li metti il programma funziona, ma non fa quello che ti aspetti.
 
  • Mi piace
Reazioni: PIPPOBAUDO
dopo aver fato queste modifiche vedo che non funziona ancora
dal 3 in poi mi da zero credo che ci sia un problema con il for
package array2;


import java.util.Scanner;


public class Array2 {
public boolean continua=true;
public static void main(String[] args) {
int eu[]={29,34,25,24,21}; // età e numero degli uomini
int ed[]= {28,30,32,24,20}; //età e numero delle donne
System.out.println("Scegli un opzione");
System.out.println("1.chiedi quanta gente c'è");
System.out.println("2.chiedi quanti uomini ci sono");
System.out.println("3.chiedi quante donne ci sono");
System.out.println("4.chiedi l'età degli uomini");
System.out.println("5.chiedi l'età delle donne");
System.out.println("6.chiedi l'età media degli uomini");
System.out.println("7.chiedi l'età media delle donne");
System.out.println("8.chiedi l'età media di tutti");
int dec;
Scanner in= new Scanner(System.in);
System.out.println("");
dec=in.nextInt();
NewClass x = new NewClass(eu,ed);
switch(dec){
case 1:
System.out.println(x.getNumPersone());
break;
case 2:
System.out.println(x.getNumUomini());
break;
case 3:
System.out.println(x.getNumDonne());
break;
case 4:
x.EtaUomini();
break;
case 5:
x.EtaDonne();
break;
case 6:
System.out.println(x.getMediaUomini());
break;
case 7:
System.out.println(x.getMediaDonne());
break;
case 8:
System.out.println((x.getMediaDonne()+x.getMediaUomini())/2);
break;
// faccio la media di delle età di uomini e donne
}
}
}



package array2;




public class NewClass {
int a[],b[];
//toteu è il totale delle età degli uomini
//toted è il totale delle età delle donne
NewClass(int eu[],int ed[]){
a=eu;
b=ed;
}
public int getNumPersone(){
return a.length+b.length;
} //ottengo il numero di uomin+ quello delle donne
public int getNumUomini(){
return a.length;
} //ottengo il numero degli uomini
public int getNumDonne(){
return b.length;
} // ottengo il numero delle donne
public void EtaUomini(){
for(int num=0;num>a.length;num++){
System.out.println(a[num]);
}//faccio scrivere l'età di tutti gli uomini
}
public void EtaDonne(){
for(int nums=0;nums>b.length;nums++){
System.out.println(b[nums]);
}//faccio scrivere l'età di tutte le donne
}
public double getMediaUomini(){
int toteu=0;
for(int num=0;num>a.length;num++){
toteu=toteu+a[num];
}
return toteu/a.length;
}//faccio la media delle età degli uomini
public double getMediaDonne(){
int toted=0;
for(int nums=0;nums>b.length;nums++){
toted=toted+b[nums];
}
return toted/b.length;
}//faccio la media delle età delle donne
}

- - - Updated - - -

no ho capito ho sbagliato anziche mettere < ho messo maggiore quindi il ciclo non partiva

- - - Updated - - -

lol lol
 
Stato
Discussione chiusa ad ulteriori risposte.