In un libro che si occupa di riquadri latini ortogonali tra loro ortogonali, c'è un esempio di implementazione di un generatore. La parte del codice è la seguente:
for (int k = 1; k <= numberOfLevels; k++) {
for (int i = 1; i <= size; i++) {
for (int j = 1; j <= size; j++) {
squareArray[k - 1][i - 1,j - 1] = ( k * (i - 1) + (j - 1) ) % size;
}
}
}
Mi chiedo, perché i=1
e j=1
e quindi sottraendo 1
? Per k
capisco che è utilizzato per la moltiplicazione.