Vai al contenuto

Aiuto Urgente java & xcode


Messaggi raccomandati

Ho compilato questo programma, chiamato gioco della vita su xcode

import java.util.*;

public class GiocoDellaVita {

   public static void main (String args[]) {
      Scanner s= new Scanner (System.in);
   System.out.print("Quante righe?");
   int n= s.nextInt();
   System.out.print("Quante colonne?");
   int m= s.nextInt();

   char [][]mappa= new char [n][m];
   leggiConfigurazione(mappa);
   System.out.print ("Quante generazioni?");
   int g= s.nextInt();
   for (int i=0; i<g; i++) {
   char [][] nuovaGen= prossimaGenerazione(mappa);
   stampaRigheMatrice (nuovaGen);
   mappa=nuovaGen;
   }// for
   }// main


public static void stampaRigheMatrice(char[][] A) {
   for (int i=0; i<A.length; i++) {       // scandisce righe
       for (int j=0; j<A[0].length; j++)  // scandisce elementi riga i
           System.out.print(A[i][j]+" "); // stampa elemento riga
       System.out.println();              // fine riga
   }
}//fine metodo

static char[][] prossimaGenerazione (char [][]a){
char b[][]= new char [a.length][a[0].length];
for (int i=0; i<b.length; i++)
 for (int j=0; j<b[0].length; j++){
  int v= vicini(a,i,j);
  if (a[i][j]=='*')
	b[i][j]= (v==2 || v==3) ? '*': '.';
  else
	b[i][j]= (v==3) ?'*': '.';
 }// for
 return b;
}//metodo

static int vicini (char[][]a, int i, int j) {
int cv=0;// conta i vicini
if (i>0 && a[i-1][j]=='*') cv++;//nord
if (i>0 && j<a[0].length-1 && a[i-1][j+1]=='*') cv++;
if (j>a[0].length-1 && a[i][j+1]== '*') cv++;
if (i<a.length-1 && j<a[0].length-1 && a[i+1][j+1]=='*') cv++;
if (i<a.length-1 && a[i+1][j]=='*') cv++;
if (i<a.length-1 && j>0 && a[i+1][j-1]=='*') cv++;
if (j>0 && a[i][j-1]=='*') cv++;
if (i>0 && j>0 && a[i-1][j-1]=='*') cv++;
return cv;
}// vicini

static void leggiConfigurazione (char[][]a) {
Scanner b= new Scanner (System.in);
String line= null;
for (int i=0; i<a.length; i++) {
line=b.nextLine();
 if (line.length()!=a[0].length) {
 System.out.println("Lunghezza della linea scorretta");
 System.exit(-1);
 }// fine
 for (int j=0; j<a[0].length; j++)
 a[i][j]=line.charAt(j);
}// fine for
} //fine leggiConfigurazione

}

E Xocde mi da il seguente errore quando cerco di eseguirlo:

[session started at 2009-03-04 18:56:40 +0100.]

Picked up _JAVA_OPTIONS: -Xdebug -Xnoagent -Xrunjdwp:transport=dt_local,server=y,address=8000

Listening for transport dt_local at address: 8000

Quante righe?JavaBug>

Non mi era mai capitato che mi desse un errore del genere e non riesco a capire cos'abbia.

Ho dato il mio codice a un mio amico che usa Textpad e sul suo computer funzionava perfettamente, quindi credo che il codice sia corretto ma c'è qualcosa che non va in Xcode.

Qualcuno può aiutarmi? Inoltre potete consigliarmi dei metodi alternativi per compilare in java su Mac (magari direttamente da Terminale)

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

A me da terminale dice questo

Exception in thread "main" java.lang.NoClassDefFoundError: gioco/java

When I’m Done, This Night Will Fear Me

Link al commento
Condividi su altri siti

A me da terminale dice questo

Anche a me, ho provato poco fa a compilare da terminale e mi dà lo stesso errore.

Ecco il messaggio completo

Exception in thread "main" java.lang.NoClassDefFoundError: GiocoDellaVita/Users/ar89/Desktop/Programmi/GiocoDellaVita/src/GiocoDellaVita/java

Caused by: java.lang.ClassNotFoundException: GiocoDellaVita.Users.ar89.Desktop.Programmi.GiocoDellaVita.src.GiocoDellaVita.java

at java.net.URLClassLoader$1.run(URLClassLoader.java:200)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:188)

at java.lang.ClassLoader.loadClass(ClassLoader.java:316)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:288)

at java.lang.ClassLoader.loadClass(ClassLoader.java:251)

at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

Neanche sapevo che con Xcode si potesse compilare Java, perché non usi stumenti dedicati come Eclipse o Netbeans?

Pancho was a bandit boy, his horse was fast as polished steel

He wore his gun outside his pants

-----

Il Principe diventa Re, nella notte di Madrid.

Link al commento
Condividi su altri siti

Neanche sapevo che con Xcode si potesse compilare Java, perché non usi stumenti dedicati come Eclipse o Netbeans?

Perché ancora non li so usare, appena posso scaricherò uno dei due tuttavia non credo che il problema derivi da xcode, anche usando direttamente il terminale mi dà quell'errore.

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

a me con javac compila senza problemi.

Ma il file si chiama GiocoDellaVita.java e avete dat un cd fino alla cartella che lo contiene, vero?

"Errore di configurazione di Windows: mouse e tastiera scollegati. Premere F1 per riavviare."

"Assimilation is futile: Microsoft delenda est!"

6/6/2005: è l'inizio della fine.

Home Page | multiXFinder | OpenArena | SuspendNow!

Link al commento
Condividi su altri siti

a me con javac compila senza problemi.

Ma il file si chiama GiocoDellaVita.java e avete dat un cd fino alla cartella che lo contiene, vero?

Potresti farmi vedere il comando per intero, ho paura di sbagliare qualcosa.

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

1) chiama il file "GiocoDellaVita.java", senza virgolette e piazzalo sulla scrivania.

2) apri una nuova finestra di Terminale e digita il comando

cd Desktop

3) dai il comando

javac GiocoDellaVita.java

4) avvia il programma con

java GiocoDellaVita

"Errore di configurazione di Windows: mouse e tastiera scollegati. Premere F1 per riavviare."

"Assimilation is futile: Microsoft delenda est!"

6/6/2005: è l'inizio della fine.

Home Page | multiXFinder | OpenArena | SuspendNow!

Link al commento
Condividi su altri siti

Bellino, lo feci alle superiori in pascal ;)

Comunque, mi unisco al consiglio di mutaforme: eclipse e netbeans non hanno paragoni per Java. Personalmente preferisco il primo; e tranquillo, è facilissimo ed intuitivo anche ad un primo utilizzo

Just when things went right, it doesn't mean they were always wrong

~

» Use Your Illusion «

Link al commento
Condividi su altri siti

Comunque, mi unisco al consiglio di mutaforme: eclipse e netbeans non hanno paragoni per Java. Personalmente preferisco il primo; e tranquillo, è facilissimo ed intuitivo anche ad un primo utilizzo

ma per una cosa del genere un eidtor di testo e javac vanno benissimo…

chiaramente per un progetto un po' più complesso no.;)

"Errore di configurazione di Windows: mouse e tastiera scollegati. Premere F1 per riavviare."

"Assimilation is futile: Microsoft delenda est!"

6/6/2005: è l'inizio della fine.

Home Page | multiXFinder | OpenArena | SuspendNow!

Link al commento
Condividi su altri siti

1) chiama il file "GiocoDellaVita.java", senza virgolette e piazzalo sulla scrivania.

2) apri una nuova finestra di Terminale e digita il comando

cd Desktop

3) dai il comando

javac GiocoDellaVita.java

4) avvia il programma con

java GiocoDellaVita

Ok, però dopo, qualsiasi sia il numero di colonne e di righe che inserisco lui mi dice che la lunghezza della linea è scorretta, non capisco perché.

Edit: funziona perfettamente, grazie mille, penso che ci risentiremo presto qando inizierò a pare programmi object-oriented:ghghgh:

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

Ok, però dopo, qualsiasi sia il numero di colonne e di righe che inserisco lui mi dice che la lunghezza della linea è scorretta, non capisco perché.

Edit: funziona perfettamente, grazie mille, penso che ci risentiremo presto qando inizierò a pare programmi object-oriented:ghghgh:

Lo faceva anche a me, ma suppongo che fosse un problema di codice…:ghghgh:

ANch'io sono agli inizi con java, comunque…:DD

"Errore di configurazione di Windows: mouse e tastiera scollegati. Premere F1 per riavviare."

"Assimilation is futile: Microsoft delenda est!"

6/6/2005: è l'inizio della fine.

Home Page | multiXFinder | OpenArena | SuspendNow!

Link al commento
Condividi su altri siti

Lo faceva anche a me, ma suppongo che fosse un problema di codice…:fiorellino:

ANch'io sono agli inizi con java, comunque…:ghghgh:

No non è un problema di codice, visto che con Scanner non puoi inserire un char alla volta, allora ho dovuto fare in modo che si inserissero le intere righe ogni volta.

host187-14-dynamic:Desktop antonioruffolo$ javac GiocoDellaVita.java
host187-14-dynamic:Desktop antonioruffolo$ java GiocoDellaVita
Quante righe?2
Quante colonne?3
***
.*.
Quante generazioni?4
Generazione numero: 1
. * * 
. * * 
Generazione numero: 2
. * * 
. * * 
Generazione numero: 3
. * * 
. * * 
Generazione numero: 4
. * * 
. * * 

Quando hai tempo vai a dare un'occhiata nell'altro topic, ora sono alle prese con gli oggetti e con la creazione di package:confused:

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

No non è un problema di codice, visto che con Scanner non puoi inserire un char alla volta, allora ho dovuto fare in modo che si inserissero le intere righe ogni volta.

appunto: "problema di codice" nel senso di "errore nel codice"…:fiorellino:

Quando hai tempo vai a dare un'occhiata nell'altro topic, ora sono alle prese con gli oggetti e con la creazione di package:confused:

non ho ancora creato package, ma ci posso dare un'occhiata.

"Errore di configurazione di Windows: mouse e tastiera scollegati. Premere F1 per riavviare."

"Assimilation is futile: Microsoft delenda est!"

6/6/2005: è l'inizio della fine.

Home Page | multiXFinder | OpenArena | SuspendNow!

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...