Guarda allora ti spiego: Se la dimensione dell'array è 9 ovviamente ci devono essere 9 elementi.
Il programma mi deve restituisce "ok" se questo array è formato da blocchi di N elementi tutti uguali.
Se anche solo un numero del blocco è diverso dal blocco stesso il programma mi deve restituire "No".
Alcuni esempi per chiarire:
1)
Dim = 4;
N = 2;
A = {11,22} mi restituisce OK !
//Qui deve controllare solamente due numeri perchè N = 2. Ci sono 2 blocchi : il primo formato da 1,1 e l'altro formato da 2,2.
2)
dim = 12;
N = 4;
A = {1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4} mi restituisce OK !
-Controllo se il primo blocco formato da 1,1,1,1 è composta da uguali elementi ==> Si!
-Controllo se il secondo blocco formato da 2,2,2,2 è composta da uguali elementi ==> Si!
-Controllo se il terzo blocco formato da 3,3,3,3 è composto da uguali elementi ==> Si!
-Controllo se il quarto blocco formato da 4,4,4,4 è composta da uguali elementi ==> Si!
- Restituisce OK!.
//Controlla i primi 4 elementi del primo blocco, i secondi 4 elementi del secondo blocco etc.
Se ogni blocco ha gli elementi uguali (del relativo blocco) allora restituisce OK.
A = {1,1,1,1,2,2,2,2,3,3,4,3,4,4,4,4} restituisce NO !
Il blocco formato da 3,3,4,3 non contiene tutti gli stessi elementi. Gli altri blocchi ossia: 1,1,1,1 2,2,2,2, e 4,4,4,4 vanno bene.
I primi due esempi che hai fatto tu non sono validi perchè in origine io ho una matrice quadrata quindi i blocchi devono essere quadrati.Immagina di mettere a matrice gli elementi dell'array in base ad N.
1° esempio fatto da te:
N = 3;
1 1 1
0 0 2
2 2 3
3 3 ==> Mancherebbe un elemento. Anche se ci metto un elemento ad esempio il numero 3 mi restituisce NO. Perchè: A ={1,1,1,0,0,2,2,2,3,3,3,3(elemento aggiunto)}.
-controlla il primo blocco (1,1,1) ==> ok!
-controlla il secondo blocco (0,0,2) ==> No !
-Esci dal programma.
2° Esempio che hai fatto.
N = 3;
1 1 1
0 0 2
2 2 ==> Manca sempre un elemento.Per il motivo detto sopra restituisce No.
3° esempio che hai fatto.
N = 3
1 1 1
2 2 2
2 2 2
Questa matrice va bene e restituirebbe OK.
Se servono ancora delle spiegazioni ditemelo, sono a vostra disposizione !