|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 | |
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
[Java] Aiuto Problema con Java e Xcode
Ho compilato questo programma, chiamato gioco della vita su xcode
Codice:
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
}
Quote:
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) |
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
..scaricati eclipse o netbeans, per java sono nettamente meglio, xcode mi sa che è un pò inutile anche tenendo conto del fatto che javacocoa non è + supportato da leopard in poi...
__________________
|
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
in realtà non ho capito quale errore ti dia dato che correttamente ti chiede di inserire il numero di righe...
__________________
|
|
|
|
|
|
#5 |
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
prova a farlo partire dal terminale spostandoti in quella directory e scrivendo java GiocoDellaVita e vedi che succede...
__________________
|
|
|
|
|
|
#7 | ||
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
Quote:
Quote:
|
||
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
non lo devi lanciare dalla cartella dei sorgenti, ma da quella che contiene il .class
comunque se c'è una cartela GiocoDellaVita significa che c'è anche un package e quindi devi lanciarla col comando java GiocoDellaVita.GiocoDellaVita dalla cartella dei compilati (classes o bin o qualcosa del genere);
__________________
|
|
|
|
|
|
#9 | ||
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
Quote:
Quote:
|
||
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2787
|
Scrivi GiocoDellaVita senza ".class"
|
|
|
|
|
|
#11 |
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2787
|
Dovrebbe essere così:
Codice:
cd Users/antonioruffolo/Desktop/Programmi/GiocoDellaVita/bin/ java GiocoDellaVita Ultima modifica di wingman87 : 05-03-2009 alle 14:49. |
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
java GiocoDellaVita
__________________
|
|
|
|
|
|
|
#14 |
|
Junior Member
Iscritto dal: Mar 2009
Messaggi: 9
|
Ok, ora funziona perfettamente, grazie mille per l'aiuto, purtroppo non sono riuscito a capire perché Xcode non riesca a eseguirlo.
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:25.




















