Precedente :: Successivo |
Autore |
Messaggio |
franco.ab Dio minore
Registrato: 17/11/08 11:52 Messaggi: 666
|
Inviato: 10 Apr 2011 18:04 Oggetto: programma che disegna frattale... |
|
|
Ciao,proseguendo nello studio small basic mi sono imbattuto in un programma che disegna un frattale.Premetto che non sapevo cosa fosse un frattale e quando ho visto il risultato del programma sono rimasto molto colpito.Non vedevo l’ora di capire come si progettasse una simile meraviglia che sembra uno dei famosi cerchio nel grano…poi scopro che il programma non è spiegato ed è lasciato come esercizio al lettore capirne la logica.A questo punto pensavo di trovare un programma estremamente lungo…ho fatto in pascal un programma che criptava e decriptava le parole e se non ricordo male aveva quasi 100 righe di codice,ma questo mi sembrava qualcosa di molto più complesso e quindi immaginavo centinaia di linee di codice….invece scopro che non ha nemmeno 20 righe!Riporto il programma che funziona anche in visual basic:
Codice: | GraphicsWindow.BackgroundColor = "Black"
x = 100
y = 100
For i = 1 To 100000
r = Math.GetRandomNumber(3)
ux = 150
uy = 30
If (r = 1) then
ux = 30
uy = 1000
EndIf
If (r = 2) Then
ux = 1000
uy = 1000
EndIf
x = (x + ux) / 2
y = (y + uy) / 2
GraphicsWindow.SetPixel(x, y, "LightGreen")
EndFor |
Il programma è di per se molto semplice e mi sembra incredibile che disegni un triangolo grande e un infinità di triangoli più piccoli al suo interno…sinceramente non riesco proprio ad immaginare qual è la logica di base…cioè io non sarei mai riuscito a fare un programma del genere.Non è che pretendo che mi spiegate la logica di questo programma...ma potreste darmi almeno un indizio?
Grazie |
|
Top |
|
|
SverX Supervisor Macchinisti
Registrato: 25/03/02 11:16 Messaggi: 11559 Residenza: Tokelau
|
Inviato: 11 Apr 2011 12:27 Oggetto: |
|
|
solo un indizio? allora:
ricorsività
|
|
Top |
|
|
franco.ab Dio minore
Registrato: 17/11/08 11:52 Messaggi: 666
|
Inviato: 17 Apr 2011 12:42 Oggetto: |
|
|
Ciao SverX...avevo capito che si tratta di ricorsività...quello che non riesco ad intuire è la legge che permette di creare così tanti trangoli...forse mi servirebbe un altro indizio...
ciao |
|
Top |
|
|
SverX Supervisor Macchinisti
Registrato: 25/03/02 11:16 Messaggi: 11559 Residenza: Tokelau
|
Inviato: 18 Apr 2011 10:53 Oggetto: |
|
|
beh se dico che "dentro ogni triangolo devi disegnare tre triangoli in un certo modo" e poi dico di applicare ricorsivamente la regola sicuramente otterrai un buon numero di triangoli, a seconda di quante volte andrai a reiterare il procedimento... |
|
Top |
|
|
franco.ab Dio minore
Registrato: 17/11/08 11:52 Messaggi: 666
|
Inviato: 22 Apr 2011 17:48 Oggetto: |
|
|
ok SverX...credo di esserci arrivato...grazie dell'aiuto chè è stato molto più di un indizio ....comunque da solo non ci sarei mai riuscito!
Ne aprofitto per augurare una serena Pasqua a te e a tutti gli amici dell'Olimpo.
Ciao |
|
Top |
|
|
|