PDA

View Full Version : [JAVA] perchè questo errore nella compilazione?


Nukles
07-01-2005, 13:19
Sto cercando di fare un programma che mi dica quante volte compare in una sequenza il numero massimo della sequenza.

Utilizzo il package fiji (un package per semplificare alcune operazioni, by il mio prof). Compilatelo e vedete l'errore che mi dà: un ".class expected". Che significa? Ecco the program...

------------------------------------------------------

import fiji.io.*;
class Massimi {
public static void main(String args[]) {
int[] numeri;
int i;
int n;

System.out.print("Inserisci quanti numeri vuoi nell'array: ");

numeri = new int[n];

for (i=0; i<a.length; i++) {
System.out.println("Inserisci l'elemento di posto " + ( i + 1 ) );
a[i] = Lettore.in.leggiInt();
}

Massimi.massimi(numeri[]);

}

public static void massimo(int[] a) {
// pre: a!=null
int i;
int massimo;

massimo = a[0];

for (i=1; i<a.length; i++)
if (a[i] > massimo) massimo = a[i];

return massimo;

}

public static int occorrenze(int k int[] a) {
//pre: a!=null
int i;
int occorrenze;

occorrenze = 0;

for (i=0; i<a.length; i++)
if (a[i] = k) occorrenze++;

return occorrenze;

}

public static int massimi(int[] a) {
//pre: a!=null
int i;
int massimi;

Massimi.massimo( a[] );
massimi = Massimi.occorenza( massimo( a[] ), a[] );

return massimi;
}

}

---------------------------

Aiutatemi perfavore a capire il perchè dell'errore di compliazione, GRAZIE MILLE!

anx721
07-01-2005, 15:32
Dicci la riga d'errore, e magari allega anche il codice del package del prof se no come compiliamo?

Nukles
07-01-2005, 16:17
Originariamente inviato da anx721
Dicci la riga d'errore, e magari allega anche il codice del package del prof se no come compiliamo?

che cretino che sono...

cmq non è necessario il package; alla fine solo l'oggetto Lettore è del package.

Ecco l'errore:

-------------------------------------------------

E:\Documenti\Java Files\Prove\Massimi.java:37: cannot resolve symbol
symbol : method occorenze (int,int[])
location: class Massimi
massimi = Massimi.occorenze( massimo( a ), a );
^
E:\Documenti\Java Files\Prove\Massimi.java:51: cannot resolve symbol
symbol : variable a
location: class Massimi
for (i=0; i<a.length; i++) {
^
E:\Documenti\Java Files\Prove\Massimi.java:53: cannot resolve symbol
symbol : variable a
location: class Massimi
a[i] = Lettore.in.leggiInt();
^
3 errors

Procedura completata con codice di uscita 1

------------------------------------------

Come mai mi dice che non riesce a risolvere il simbolo a? Mi ci sto sbattendo, ma sarà forse il cervello ancora pieno di zucchero di pandoro a non farmi capire il perchè...

anx721
07-01-2005, 17:53
In

public static int occorrenze(int k int[] a)

hai dimenticato la virgola tra gli argomenti:

public static int occorrenze(int k, int[] a)


poi la variaile a nel main non è dochiarata; forse volevi usare numeri al suo posto?

Nukles
07-01-2005, 20:39
Originariamente inviato da anx721
In

public static int occorrenze(int k int[] a)

hai dimenticato la virgola tra gli argomenti:

public static int occorrenze(int k, int[] a)


poi la variaile a nel main non è dochiarata; forse volevi usare numeri al suo posto?

ti ringrazio molto, era quella a non dichiarata che mi ha fatto confondere; l'errore della virgola l'avevo notato successivamente.

Scusami, ma sono alle primissime armi (anzi è il primo programma complesso) nell'uso degli array in Java

Grazie ancora; c'è qualche altro piccolo problemino ancora, ma non fa niente cercherò di risolverlo da solo per migliorarmi :cool: ciao! :)