Ciao ragazzi ho un problema con questo esercizio in java...qualche consiglio su come svolgerlo?
Dovrei usare la ricorsione giusto?
Un tappeto magico di ordine n (0 = n = 5) e parametro k (0 = k < 9) `
e una matrice 3^n × 3^n , a valori binari, definita induttivamente nel seguente modo:
• se n = 0 (matrice 1 × 1), allora l’unico elemento della matrice vale 1;
• se n > 0 (matrice 3^n × 3^n ), si consideri una suddivisione della matrice in 9
blocchi di dimensioni 3^n-1 × 3^n-1 ciascuno. Si considerino numerati da 0 a 8
i blocchi, in questo modo:
0 1 2
3 4 5
6 7 8
Il blocco numero j (0 = j < 9) `
e a sua volta
– un blocco di elementi tutti uguali a zero, se j = k;
– un tappeto magico di ordine n - 1 e parametro k, se j = k.
Si vuole realizzare un programma Java che dati n e k stampi una rappresentazione
testuale di un tappeto magico di ordine n e parametro k.
Formato di Input. L’input `
e strutturato nel seguente modo:
• una riga contenente i due interi n e k, separati da uno spazio.
Si assuma che n e k soddisfino i vincoli 0 = n = 5, 0 = k < 9.
Formato di Output. Si deve stampare un tappeto magico di ordine n e parametro
k, secondo la seguente codifica:
• i valori uguali a 0 sono rappresentati dal carattere ’.’;
• i valori uguali a 1 sono rappresentati dal carattere ’*’.
I valori su una stessa riga non sono separati da spazi. Ciascuna riga della matrice `
e
terminata dall’usuale newline ’\n’.
Grazie!