Oppure

Loading
Questo topic e' stato chiuso dal moderatore.
28/12/10 11:20
crack001
Salve gente...devo consegnare un programma come progetto universitario, solo ke sono leggermente in difficolta XD in pratica il programma deve scrivere in una matrice M[n][n] il seguende frattale:

it.wikipedia.org/wiki/…

e lo crea in base al valore d'ordine che inserisco, ora la mia domanda è, come cacchio faccio? cioè ho capito il procedimento xo non so applicarlo, qualcuno sa suggerirmi qualcosa?:pat::pat::pat::pat::pat::pat::pat:


Ultima modifica effettuata da crack001 28/12/10 11:22
aaa
28/12/10 12:11
Sinceramente io non so cosa sia un frattale ma suppongo che devi scrivere nella matrice 1 dove il disegno è nero e 0 dove è bianco...giusto?

Se così fosse potresti farlo anche ricorsivamente, visto che alla fine devi ripetere sempre le stesse 3 operazioni.

Ma io non ho capito quando ci si deve fermare, cioè come dice wikipedia quando si deve smettere di ripetere i passaggi da 1 a 3
28/12/10 21:36
crack001
guarda io dovrei fare una cosa del genere:

img696.imageshack.us/img696/2589/…

in pratica quando inserisco 1 lui mi scrive nella matrice il tappeto di ordine 1, quando isnerisco 2 il tappeto di ordine 2 e cosi via...

anche io pensavo ad 1 funzione ricorsiva, ma sinceramente non so come impostarla...tu come faresti?
aaa
29/12/10 10:14
Il Totem
La dimensione della matrice deve essere di 3^(ordine-1)x3^(ordine-1).
Sì, è possibile usare una funzione ricorsiva, in quanto ogni problema di ordine n è scomponibile in 8 sottoproblemi di ordine n-1. Potresti semplicemente costruire una funzione che, ricevuta in un ingresso una matrice o una sottomatrice "colori" le nove parti in cui essa è divisibile. Successivamente richiami la stessa funzione su ogni sottoinsieme della matrice passata come argomento, fino ad arrivare all'ordine 0.
aaa
29/12/10 12:23
crack001
Postato originariamente da Il Totem:

La dimensione della matrice deve essere di 3^(ordine-1)x3^(ordine-1).
Sì, è possibile usare una funzione ricorsiva, in quanto ogni problema di ordine n è scomponibile in 8 sottoproblemi di ordine n-1. Potresti semplicemente costruire una funzione che, ricevuta in un ingresso una matrice o una sottomatrice "colori" le nove parti in cui essa è divisibile. Successivamente richiami la stessa funzione su ogni sottoinsieme della matrice passata come argomento, fino ad arrivare all'ordine 0.


ti dispiacerebbe farmi un esempio in pseudo-codice xke sinceramente non mi è tanto chiaro quello che mi hai scritto 8-|
aaa
30/12/10 19:56
crack001
niente? t'ho mandato anche 1 email ma nn hai risp
aaa