Forum Informatica Unict

LAUREA TRIENNALE (D.M. 270/04) => Programmazione 1, 9 CFU => Topic started by: dani89 on 16-06-2009, 11:57:44



Title: Esercizi sull'esame di oggi 16/06/09
Post by: dani89 on 16-06-2009, 11:57:44
ragazzi mi funzionano tutti e 2 in compilazione e io output ma ho un dubbio: come si inizializza l'array tridimensionale???? .penso .penso .penso .penso .penso .penso
float[][][]A=?????????????????????????
se qualcuno (non so come) lo sa è pregato di postarlo grazie!


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 16-06-2009, 12:03:58
ragazzi mi funzionano tutti e 2 in compilazione e io output ma ho un dubbio: come si inizializza l'array tridimensionale???? .penso .penso .penso .penso .penso .penso
float[][][]A=?????????????????????????
se qualcuno (non so come) lo sa è pregato di postarlo grazie!
Sinceramente non ci ho pensato perchè il main all'esame non lo faccio mai, quindi non ti so dire!


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: dani89 on 16-06-2009, 12:07:11
ovvio che non si fa il main, ma mi serve per provare la correttezza del codice


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: figiciotta on 16-06-2009, 12:26:48
ciau, potete scrivere l'intero es per favore?? grazie ;)


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: dani89 on 16-06-2009, 16:19:47
Scrivere un metodo che prenda in input tre cubi di float e restituisca un valore fra 1,2 e 3 che indichi l'array con il massimo elemento.


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: callo on 16-06-2009, 16:40:22
Io l'ho svolto così:
Code:
/*
Scrivere un metodo che prenda in input
tre cubi di float e restituisca un valore fra
1,2 e 3 che indichi l'array con il massimo
elemento.
*/
public class esercizioesame9
{
public static float metodo ( float [][][] a, float [][][]b ,float [][][]c )
{
float max=a[0][0][0];
float max1=b[0][0][0];
float max2=c[0][0][0];
for(int i=0;i<a.length;i++)
for(int j=0;j<a[0].length;j++)
for(int s=0;s<a[i].length;s++)
{
if(a[i][j][s]>max)
max=a[i][j][s];
if(b[i][j][s]>max1)
max1=b[i][j][s];
if(c[i][j][s]>max2)
max2=c[i][j][s];
}
if(max>max1 && max>max2)
return 1;
if(max1>max && max1>max2)
return 2;
if(max2>max && max2>max1)
return 3;
return 0;
}
public static void main(String args[] )
{
float[][][] cube = {
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 34, 3 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 32, 3 },{ 1, 12, 3 } }};
float[][][] cube1 = {
{ { 1, 2, 32 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 22, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 2, 3 } }};
float[][][] cube2 = {
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 211, 3 },{ 1, 256, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 12, 3 } }};
System.out.println(metodo(cube,cube1,cube2));
}
}
verificato e funziona......speriamo bene!!:D


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 16-06-2009, 18:12:27
Si il tuo codice funziona, però, il professore aveva detto che i cubi non aveva tutti la stessa dimensione tra loro mi pare....non so se cambia.


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Mari_C on 16-06-2009, 18:31:42
Io l'ho svolto così:
Code:
/*
Scrivere un metodo che prenda in input
tre cubi di float e restituisca un valore fra
1,2 e 3 che indichi l'array con il massimo
elemento.
*/
public class esercizioesame9
{
public static float metodo ( float [][][] a, float [][][]b ,float [][][]c )
{
float max=a[0][0][0];
float max1=b[0][0][0];
float max2=c[0][0][0];
for(int i=0;i<a.length;i++)
for(int j=0;j<a[0].length;j++)
for(int s=0;s<a[i].length;s++)
{
if(a[i][j][s]>max)
max=a[i][j][s];
if(b[i][j][s]>max1)
max1=b[i][j][s];
if(c[i][j][s]>max2)
max2=c[i][j][s];
}
if(max>max1 && max>max2)
return 1;
if(max1>max && max1>max2)
return 2;
if(max2>max && max2>max1)
return 3;
return 0;
}
public static void main(String args[] )
{
float[][][] cube = {
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 34, 3 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 32, 3 },{ 1, 12, 3 } }};
float[][][] cube1 = {
{ { 1, 2, 32 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 22, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 2, 3 } }};
float[][][] cube2 = {
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 2, 3 } },
{ { 1, 211, 3 },{ 1, 256, 3 },{ 1, 2, 3 } },
{ { 1, 2, 3 },{ 1, 2, 3 },{ 1, 12, 3 } }};
System.out.println(metodo(cube,cube1,cube2));
}
}



non riesco a capire come con 3 for ti può controllare pure i cubi b e c..  .penso


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 16-06-2009, 18:42:59
 .quoto

E' stato un colpo basso perchè non è una cosa che abbiamo trattato nel programma, io ho scritto questo, ma il mio codice purtroppo è errato.....

Code:
public static float metodo(float[][][]A,float[][][]B,float[][][]C)
{
float max=0;
float max1=0;
float max2=0;
float max3=0;

float massimo=0;

for(int r=0; r<A.length; r++)
{
for(int c=0; c<A[r].length; c++)
{
for(int c1=0; c1<A[r][c].length; c1++)
{
max=A[r][c][c1];
if(max<A[r][c][c1])
max=A[r][c][c1];

}
}
max1=max;
}

for(int r=0; r<B.length; r++)
{
for(int c=0; c<B[r].length; c++)
{
for(int c1=0; c1<B[r][c].length; c1++)
{
max=B[r][c][c1];
if(max<B[r][c][c1])
max=B[r][c][c1];

}
}
max2=max;

}


for(int r=0; r<C.length; r++)
{
for(int c=0; c<C[r].length; c++)
{
for(int c1=0; c1<C[r][c].length; c1++)
{
max=C[r][c][c1];
if(max<C[r][c][c1])
max=C[r][c][c1];

}
}
max3=max;

}


if(max1>max2 && max1>max3)
massimo=1;
if(max2>max1 && max2>max3)
massimo=2;
if(max3>max1 && max3>max2)
massimo=3;
return massimo;
}
}


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 16-06-2009, 18:56:39
Si può risolvere così:
Code:
public static int metodo (float [][][] A, float [][][] B, float [][][] C)
{
    float maxA, maxB, maxC;
   
    //in caso di parità dei massimi restituiamo 1 per convenzione
    maxA = (A.length > 0 && A [0].length > 0 && A [0][0].length > 0) ? A [0][0][0] : 1f;
    maxB = (B.length > 0 && B [0].length > 0 && B [0][0].length > 0) ? B [0][0][0] : 0f;
    maxC = (C.length > 0 && C [0].length > 0 && C [0][0].length > 0) ? C [0][0][0] : 0f;
   
    for (int x = 0; x < A.length; x++)
        for (int y = 0; y < A [x].length; y++)
            for (int z = 0; z < A [x][y].length; z++)
                if (maxA < A [x][y][z]) maxA = A [x][y][z];

    for (int x = 0; x < B.length; x++)
        for (int y = 0; y < B [x].length; y++)
            for (int z = 0; z < B [x][y].length; z++)
                if (maxB < B [x][y][z]) maxB = B [x][y][z];

    for (int x = 0; x < C.length; x++)
        for (int y = 0; y < C [x].length; y++)
            for (int z = 0; z < C [x][y].length; z++)
                if (maxC < C [x][y][z]) maxC = C [x][y][z];

    int result;
   
    if (maxA >= maxB)
        if (maxA >= maxC)
            result = 1;
        else
            result = 3;
    else if (maxB >= maxC)
        result = 2;
   
    return result;
}


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: callo on 16-06-2009, 19:02:53
Scusate il prof non aveva detto che i cubi erano diversi ma non nelle dimensioni??nel senso il contenuto dei tre cubi era diverso mentre  la grandezza se di un cubo era 3x3x3 allora anche gli altri erano 3x3x3 mentre se di uno era 4x4x4 allora anche gli altri erano 4x4x4!!!Bo!!!Vediamo un pò come va lo scopriremo solo quando pubblicherà i risultati!!!


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Mari_C on 16-06-2009, 19:22:53
scusate potete risolvermi il dubbio se no stasera nn dormo  :-)|
come può con 3 for
(for(int i=0;i<a.length;i++)
      for(int j=0;j<a[0].length;j++)
      for(int s=0;s<a.length;s++))

 che ti vanno fino ad a.length controllarti anche i cubi b e c..


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 16-06-2009, 20:14:12
Forse in quel modo riesce perchè le matrici hanno le stesse dimensioni...mannaggia, il mio era simile ho fatto la stupidaggine ovviamente e mi sono rovinato, ma secondo ovi il mio codice lo taglierà o qualche punto me lo darà lo stesso???


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Eleirgab on 16-06-2009, 22:51:58
Il codice per scorrere una matrice cubica dovrebbe essere simile a questo:
Code:

for (int i=0;i<a.length;i++)
for (int j=0;j<a[i].length;j++)
for (int k=0;k<a[i][j].length;k++)


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 16-06-2009, 23:08:18
scusate potete risolvermi il dubbio se no stasera nn dormo  :-)|
come può con 3 for
(for(int i=0;i<a.length;i++)
      for(int j=0;j<a[0].length;j++)
      for(int s=0;s<a.length;s++))

 che ti vanno fino ad a.length controllarti anche i cubi b e c..
Nel tuo passaggio hai dimenticato di includere il codice in un tag [CODE], perciò si è persa la [i] del terzo ciclo for.

In questo codice c'è qualcosa da precisare:
Code:
for(int i=0;i<a.length;i++)
for(int j=0;j<a[0].length;j++)
for(int s=0;s<a[i].length;s++)
Se le strutture dati sono effettivamente dei cubi (struttura geometrica con larghezza = altezza = profondità) sicuramente si avrà che a.length = a [i].length = [i][j].length, per ogni i, j validi. Di conseguenza sarebbe bastato limitare sia j sia s con a.length.

Tuttavia, siccome nella vita le cose possono andare male, in generale è bene pensare di fare un controllo più potente del perchè ovviamente s dovrebbe scorrere fino ad esattamente a[0][0].length e ovviamente in questo caso le condizioni andrebbero cambiate.

In particolare non capisco secondo quale ragionamento è stato scelto prima a.length, poi a[0].length e poi a[i].length come limiti, soprattutto il terzo non mi convince, seppur funziona (con la condizione che la matrici tridimensionali passate siano esattamente cubiche).

Rispondendo a te, in generale anche se un ciclo si ferma a a.length, nulla vieta di controllare contemporaneamente a, b e c nel corpo del ciclo for più interno.


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 17-06-2009, 10:22:43
io l'ho fatto con 9 cicli for visto che il prof ha detto che i cubi non hanno la stessa dimensione


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Mari_C on 17-06-2009, 11:36:44
grazie reversengineer ..sei stato più che esaustivo!
Mannaggia però che nn lo sapevo prima :-)|


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 17-06-2009, 23:16:23
Il codice di reverse mi dà problemi, mi dice che non è stata inizializzata la variabile result, e con delle modifiche non riesco a fare funzionare il suo codice...


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: ɹǝǝuıƃuǝsɹǝʌǝɹ on 18-06-2009, 12:10:19
Il codice di reverse mi dà problemi, mi dice che non è stata inizializzata la variabile result, e con delle modifiche non riesco a fare funzionare il suo codice...
Sì, mancano un paio di parentesi graffe nel blocco che assegna result e un'ultimissimo caso, mannaggia :pray.
Correggo l'ultimo blocco con questo:
Code:
    if (maxA >= maxB)
    {
        if (maxA >= maxC)
            result = 1;
        else
            result = 3;
    }
    else
        if (maxB >= maxC)
            result = 2;
        else
            result = 3;


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 18-06-2009, 13:42:52
invece l'altro esercizio con quanti cicli for li avete fatti?


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: TheUniversalMind on 18-06-2009, 14:31:38
9 il primo esercizio, e 3 il secondo.


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Mari_C on 18-06-2009, 15:30:13
9 il primo esercizio, e 3 il secondo.


anch'io 3 for per il secondo..e i charAt delle diverse vocali concatenati con gli OR!
 il secondo mi funziona alla perfezione ..è il primo che l'ho fatto ,come si suol dire, a muzzo  :"-(


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: TheUniversalMind on 18-06-2009, 15:39:54
9 il primo esercizio, e 3 il secondo.


anch'io 3 for per il secondo..e i charAt delle diverse vocali concatenati con gli OR!
 il secondo mi funziona alla perfezione ..è il primo che l'ho fatto ,come si suol dire, a muzzo  :"-(

"cose che ammattono!" :)


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 18-06-2009, 18:57:31
io anche l'ho fatto con tre cicli for


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 18-06-2009, 20:24:39
Io invece l'ho fatto diversamente con 3.....un momento...ah no ma è uguale   :[Emoticon] Asd:
Meglio che ci rida sopra....sono certp di non essere passato solo per il primo esercizio.. .poverinoi


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: isuccia89 on 19-06-2009, 09:03:56
sono certp di non essere passato solo per il primo esercizio.. .poverinoi

ankio ho qst senzazione  :-)|


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 19-06-2009, 09:09:36
io ho fatto una cavolata nel primo esercizio e quindi mi sto mangiando le mani, spero che non la valuti gravemente


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 20-06-2009, 11:09:52
secondo voi il prof ormai li posterà lunedi i risultati?


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 20-06-2009, 14:22:16
secondo voi il prof ormai li posterà lunedi i risultati?

Qualche volta mi pare  li abbia messi anche di domenica...quindi non saprei, ma credo comunque lunedì...


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Daréios89 on 20-06-2009, 17:55:30
Speriamo bene mi sono accorto che ho sbagliato solo 3 istruzioni....nel primo, aggiornavo il massimo ad ogni ciclo con l'elemento della matrice e veniva sbagliato....mannaggia...


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: Serginho21 on 20-06-2009, 18:32:37
secondo voi il prof ormai li posterà lunedi i risultati?

Qualche volta mi pare  li abbia messi anche di domenica...quindi non saprei, ma credo comunque lunedì...
capito!


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: figiciotta on 23-06-2009, 15:52:34
ciao ragazzi!!.. posto il primo esercizio del compito di gg 16 giugno funzionante compreso di di main...(le dimensione dei tre cubi possono essere di dimensione diversa tra loro, cioè ogni cubo ha la sua dimensione)

/*
 *
* Scrivere un metodo che prenda in input 3 cubi di float, e restituisca il
* valore 1, 2, 3 che indichi rispettivamente in quale cubo si trova il valore
* massimo.
*/
public class compito
{
  public static int metodo (float [][][] A, float [][][] B, float [][][] C)
  {
    float n=0;// valore iniziale è 0;
    float m=0;
    float x=0;
   
    for(int i=0; i<A.length;i++){
      for(int j=0; j<A.length;j++){
        for(int k=0; k<A[j].length;k++){
          if(n<A[j][k]) n=A[j][k]; // trovo il valore più grande tra tutti gli elementi del primo cubo;
                                           
        }
      }
    }
   
    for(int i=0; i<B.length;i++){
      for(int j=0;j<B.length;j++){
        for(int k=0;k<B[j].length;k++){
          if(m<B[j][k]) m=B[j][k];    // trovo il valore più grande tra tutti gli elementi del secondo cubo;
        }
      }
    }
   
    for(int i=0; i<C.length;i++){
      for(int j=0;j<C.length;j++){
        for(int k=0;k<C[j].length;k++){
          if(x<C[j][k]) x=C[j][k];    // trovo il valore più grande tra tutti gli elementi del terzo cubo
        }
      }
    }
   
     // adesso si sanno il valore + grande del primo cubo n, del secondo m, e del terzo x
     //  devo confrontarli, vedere quale tra i tre valori è il più grande e restituire 1, 2 o 3 in base se il valore si trova
     // nel primo, secondo o terzo cubo.
     
    if(n>m && n>x) return 1;
      else
       if(m>n && m>x) return 2;
   
          else return 3;
  }
  public static void main(String[] args)
  {
    float [][][] A={
                   {{4,6,7},{1,2,3},{4,3,2}},
                   {{5,7,2},{5,14,3},{2,5,3}},
                   { {3,5,4},{2,6,4},{2,4,9}}
                   };
     float [][][]B={
                   {{4,6,7,3},{1,2,3,2},{4,3,2,5}},
                   {{5,7,5,1},{5,4,3,4},{2,5,3,6}},
                   { {3,5,4,7},{2,6,4,8},{2,4,9,2}}
                   };
   float [][][] C={
    {{4,6,7},{1,2,3},{4,3,2}},
    {{5,7,2},{5,10,3},{2,5,3}},
    { {3,5,4},{2,6,4},{2,4,9}}
    };
   
    int risultato = metodo(A, B, C);
    System.out.println(risultato);
  }
}


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: fabliux on 23-06-2009, 16:00:16
ciao ragazzi!!.. posto il primo esercizio del compito di gg 16 giugno funzionante compreso di di main...(le dimensione dei tre cubi possono essere di dimensione diversa tra loro, cioè ogni cubo ha la sua dimensione)

Usa  il tag Code....  :-ciao
Code:
/*
 *
* Scrivere un metodo che prenda in input 3 cubi di float, e restituisca il
* valore 1, 2, 3 che indichi rispettivamente in quale cubo si trova il valore
* massimo.
*/
public class compito
{
  public static int metodo (float [][][] A, float [][][] B, float [][][] C)
  {
    float n=0;// valore iniziale è 0;
    float m=0;
    float x=0;
   
    for(int i=0; i<A.length;i++){
      for(int j=0; j<A[i].length;j++){
        for(int k=0; k<A[i][j].length;k++){
          if(n<A[i][j][k]) n=A[i][j][k]; // trovo il valore più grande tra tutti gli elementi del primo cubo;
                                           
        }
      }
    }
   
    for(int i=0; i<B.length;i++){
      for(int j=0;j<B[i].length;j++){
        for(int k=0;k<B[i][j].length;k++){
          if(m<B[i][j][k]) m=B[i][j][k];    // trovo il valore più grande tra tutti gli elementi del secondo cubo;
        }
      }
    }
   
    for(int i=0; i<C.length;i++){
      for(int j=0;j<C[i].length;j++){
        for(int k=0;k<C[i][j].length;k++){
          if(x<C[i][j][k]) x=C[i][j][k];    // trovo il valore più grande tra tutti gli elementi del terzo cubo
        }
      }
    }
   
     // adesso si sanno il valore + grande del primo cubo n, del secondo m, e del terzo x
     //  devo confrontarli, vedere quale tra i tre valori è il più grande e restituire 1, 2 o 3 in base se il valore si trova
     // nel primo, secondo o terzo cubo.
     
    if(n>m && n>x) return 1;
      else
    if(m>n && m>x) return 2;
   
          else return 3;
  }
  public static void main(String[] args)
  {
    float [][][] A={
                   {{4,6,7},{1,2,3},{4,3,2}},
                   {{5,7,2},{5,14,3},{2,5,3}},
                   { {3,5,4},{2,6,4},{2,4,9}}
                   };
     float [][][]B={
                   {{4,6,7,3},{1,2,3,2},{4,3,2,5}},
                   {{5,7,5,1},{5,4,3,4},{2,5,3,6}},
                   { {3,5,4,7},{2,6,4,8},{2,4,9,2}}
                   };
   float [][][] C={
    {{4,6,7},{1,2,3},{4,3,2}},
    {{5,7,2},{5,10,3},{2,5,3}},
    { {3,5,4},{2,6,4},{2,4,9}}
    };
   
    int risultato = metodo(A, B, C);
    System.out.println(risultato);
  }
}


Title: Re:Esercizi sull'esame di oggi 16/06/09
Post by: fabliux on 23-06-2009, 16:01:27
ciao ragazzi!!.. posto il primo esercizio del compito di gg 16 giugno funzionante compreso di di main...(le dimensione dei tre cubi possono essere di dimensione diversa tra loro, cioè ogni cubo ha la sua dimensione)

Usa  il tag Code....  :-ciao ....PS: ben fatto :-OK
Code:
/*
 *
* Scrivere un metodo che prenda in input 3 cubi di float, e restituisca il
* valore 1, 2, 3 che indichi rispettivamente in quale cubo si trova il valore
* massimo.
*/
public class compito
{
  public static int metodo (float [][][] A, float [][][] B, float [][][] C)
  {
    float n=0;// valore iniziale è 0;
    float m=0;
    float x=0;
   
    for(int i=0; i<A.length;i++){
      for(int j=0; j<A[i].length;j++){
        for(int k=0; k<A[i][j].length;k++){
          if(n<A[i][j][k]) n=A[i][j][k]; // trovo il valore più grande tra tutti gli elementi del primo cubo;
                                           
        }
      }
    }
   
    for(int i=0; i<B.length;i++){
      for(int j=0;j<B[i].length;j++){
        for(int k=0;k<B[i][j].length;k++){
          if(m<B[i][j][k]) m=B[i][j][k];    // trovo il valore più grande tra tutti gli elementi del secondo cubo;
        }
      }
    }
   
    for(int i=0; i<C.length;i++){
      for(int j=0;j<C[i].length;j++){
        for(int k=0;k<C[i][j].length;k++){
          if(x<C[i][j][k]) x=C[i][j][k];    // trovo il valore più grande tra tutti gli elementi del terzo cubo
        }
      }
    }
   
     // adesso si sanno il valore + grande del primo cubo n, del secondo m, e del terzo x
     //  devo confrontarli, vedere quale tra i tre valori è il più grande e restituire 1, 2 o 3 in base se il valore si trova
     // nel primo, secondo o terzo cubo.
     
    if(n>m && n>x) return 1;
      else
    if(m>n && m>x) return 2;
   
          else return 3;
  }
  public static void main(String[] args)
  {
    float [][][] A={
                   {{4,6,7},{1,2,3},{4,3,2}},
                   {{5,7,2},{5,14,3},{2,5,3}},
                   { {3,5,4},{2,6,4},{2,4,9}}
                   };
     float [][][]B={
                   {{4,6,7,3},{1,2,3,2},{4,3,2,5}},
                   {{5,7,5,1},{5,4,3,4},{2,5,3,6}},
                   { {3,5,4,7},{2,6,4,8},{2,4,9,2}}
                   };
   float [][][] C={
    {{4,6,7},{1,2,3},{4,3,2}},
    {{5,7,2},{5,10,3},{2,5,3}},
    { {3,5,4},{2,6,4},{2,4,9}}
    };
   
    int risultato = metodo(A, B, C);
    System.out.println(risultato);
  }
}