Matrici

di il
9 risposte

Matrici

Buonasera,sto cercando di creare una matrice di 3righe e 9 colonne nella quale inizializza tutte le variabili a zero e poi in due posizioni a caso stampa due valori a caso,tranne che mi da un errore nel terminale.Vi lascio il codice di seguito :(non so usare bene le matrici in java quindi capite eventuali banali errori)grazie,
class Matrici {
public static void main(String[] args) {
int a[][]=new int[3][9];
int i, j;

for(i=0; i<=3; i=i+1) {
for(j=0; j<=9; j=j+1) {
a[j]=0;
}
}

a[3][5]=1;
a[9][9]=2;

for(i=0; i<=3; i=i+1) {
for(j=0; j<=9; j=j+1) {
System.out.print(a[j]+" ");
}
System.out.println("");
}
}
}

9 Risposte

  • Re: Matrici

    Il problema principale è che hai usato <= però devi ricordarti che se un array ha 3 elementi, gli indici validi vanno da 0 a 2. Il 3 NON è compreso.

    Alcune note.

    1) Abituati a mettere le [] vicino al tipo, non a destra della variabile.

    int[][] arr; // Sì
    int arr[][]; // tecnicamente corretto ma meglio evitare.

    2) quando crei un array di int, gli elementi sono già tutti inizialmente a 0. Non serve una preimpostazione esplicita a 0.

    3) invece di i=i+1 semplicemente i++
  • Re: Matrici

    Niente non mi esce comunque mi da un problema nel terminale sulla lunghezza o qualcosa del genere,bho nn so come fare
  • Re: Matrici

    groove ha scritto:


    Niente non mi esce comunque mi da un problema nel terminale sulla lunghezza o qualcosa del genere,bho nn so come fare
    Riposta il codice
  • Re: Matrici

    Problema risolto,grazie .Una domanda quasi fuori da questo argomento,secondo lei per creare una cartella(quelle per la tombola)conviene usare una matrice o ci sono altri modi(avevo letto quello dei due vettori con le unita e decine).Piu che altro che per la matrice non so come generare i numeri come li fa sulle cartelle reali della tombola.
  • Re: Matrici

    groove ha scritto:


    per creare una cartella(quelle per la tombola)conviene usare una matrice o ci sono altri modi
    Una matrice di 3 x 9 elementi va bene.

    groove ha scritto:


    Piu che altro che per la matrice non so come generare i numeri come li fa sulle cartelle reali della tombola.
    Eh .. il punto è che nelle cartelle della tombola (quelle che sono in mano ai giocatori) ci dovrebbero essere in ciascuna 15 numeri "unici" estratti a caso. Ma la disposizione di questi numeri dovrebbe rispettare una serie di criteri.
    C'è una spiegazione su wikipedia Fogli di schede ma puoi cercare anche in rete.

    Dovresti "ragionarci" un po'. Tempo fa ne avevo parlato in privato con uno studente del forum che doveva fare appunto la generazione delle cartella nella tombola. Ti assicuro che non è immediatissimo.
  • Re: Matrici

    Ciao,scusa se scrivo adesso,in pratica ho fatto la generazione di una cartella,ora pero devo fare la gui ,devo fare un altra classe FrameCartella
    e poi lavorare con i listener oppure dentro la classe Cartella attuale devo scriverci il codice per la gui(se si non ce il problema del metodo costruttore)?
  • Re: Matrici

    Ps.so che e un argomento diverso pero visto che si parlava di cartelle ho preferito scriverlo qua
  • Re: Matrici

    groove ha scritto:


    devo fare un altra classe FrameCartella

    groove ha scritto:


    oppure dentro la classe Cartella attuale devo scriverci il codice per la gui(se si non ce il problema del metodo costruttore)?
    No, la classe Cartella rappresenta la cartella a livello logico. Non deve avere né contenere nulla relativo alla GUI. Tieni sempre ben separati i concetti.
  • Re: Matrici

    Ok,ora ho un bottone genera che teroicamente deve generare i numeri sulla cartella,detto cio sapendo chhe ho la classe Cartella senza gui
    come faccio ad"collegarla"al action listener genera in maniera che mi escano sul gridlayout i numeri?so che devo fare l actionperformed event pero non
    so come scrivere nel codice le istruzioni che mi permono di collegare
Devi accedere o registrarti per scrivere nel forum
9 risposte