Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
Siccome la ricorsione mi fa sempre girare la testa, ho voluto cogliere la palla al balzo e cimentarmi con quest'esercizio.
L'ho risolto anche per le stringhe che hanno dimensioni che non siano potenze del tre, cosa che non ho ben capito se rientra nelle richieste della traccia o meno. La mia risoluzione dà uscite di questo genere:
Codice sorgente - presumibilmente Plain Text
01 char: #
02 char: ##
03 char: #.#
04 char: #..#
05 char: ##.##
06 char: ##..##
07 char: ##...##
08 char: #.#..#.#
09 char: #.#...#.#
10 char: #.#....#.#
11 char: #..#...#..#
12 char: #..#....#..#
13 char: #..#.....#..#
14 char: ##.##....##.##
15 char: ##.##.....##.##
16 char: ##.##......##.##
17 char: ##..##.....##..##
18 char: ##..##......##..##
19 char: ##..##.......##..##
20 char: ##...##......##...##
21 char: ##...##.......##...##
22 char: ##...##........##...##
23 char: #.#..#.#.......#.#..#.#
24 char: #.#..#.#........#.#..#.#
25 char: #.#..#.#.........#.#..#.#
26 char: #.#...#.#........#.#...#.#
27 char: #.#...#.#.........#.#...#.#
eccetera...
...e va be'. Poi, però, ho cercato "polvere di cantor" su "Wikipedia" e ho trovato una definizione nella quale non si parla di vettori, bensì di matrici. In altre parole, si dice che la "polvere di cantor" è un costrutto bidimensionale (in effetti l'immagine illustrativa riporta un quadrato che contiene altri quadrati, come in una specie di "frattale" - non so niente sui frattali, quindi non so se ho usato la parola a sproposito).
Qual è l'interpretazione corretta?
Ultima modifica effettuata da AldoBaldo il 06/01/2020 alle 21:49
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.
A me quel che (di solito) fa sbagliare i programmi che richiedono ricorsioni è l'impostazione delle condizioni di return, il che mi porta a "saturare" lo stack con dei crash a volte spettacolari! Per questo ho preso in considerazione il tuo esercizio: per fare esercizio.
Non so se la saturazione dello stack sia un problema anche del tuo codice (non l'ho provato).
Ultima modifica effettuata da AldoBaldo il 07/01/2020 alle 21:00
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.
Postato originariamente da AldoBaldo: Siccome la ricorsione mi fa sempre girare la testa, ho voluto cogliere la palla al balzo e cimentarmi con quest'esercizio.
L'ho pensato anche io ...
Testo quotato
Postato originariamente da AldoBaldo: L'ho risolto anche per le stringhe che hanno dimensioni che non siano potenze del tre, cosa che non ho ben capito se rientra nelle richieste della traccia o meno. La mia risoluzione dà uscite di questo genere:
Codice sorgente - presumibilmente Plain Text
01 char: #
02 char: ##
03 char: #.#
04 char: #..#
05 char: ##.##
06 char: ##..##
07 char: ##...##
08 char: #.#..#.#
09 char: #.#...#.#
10 char: #.#....#.#
11 char: #..#...#..#
12 char: #..#....#..#
13 char: #..#.....#..#
14 char: ##.##....##.##
15 char: ##.##.....##.##
16 char: ##.##......##.##
17 char: ##..##.....##..##
18 char: ##..##......##..##
19 char: ##..##.......##..##
20 char: ##...##......##...##
21 char: ##...##.......##...##
22 char: ##...##........##...##
23 char: #.#..#.#.......#.#..#.#
24 char: #.#..#.#........#.#..#.#
25 char: #.#..#.#.........#.#..#.#
26 char: #.#...#.#........#.#...#.#
27 char: #.#...#.#.........#.#...#.#
eccetera...
Si io ho fatto un po' di test, prima ho risolto la ricorsione del "cantor set" con le potenze di tre, dunque 3,9,27,81...
e i risultati vengono in linea con i tuoi
Poi ho giocato un po' con il codice per allineare i risultati in base alle richieste e prendendo spunto dai tuoi risultati ho tirato fuori 2 serie di risultati, uno lasciando l'algoritmo "base" e un secondo cercando di equilibrare i risultati per stringhe che no siano potenze di tre
Testo quotato
Postato originariamente da AldoBaldo: ...e va be'. Poi, però, ho cercato "polvere di cantor" su "Wikipedia" e ho trovato una definizione nella quale non si parla di vettori, bensì di matrici. In altre parole, si dice che la "polvere di cantor" è un costrutto bidimensionale (in effetti l'immagine illustrativa riporta un quadrato che contiene altri quadrati, come in una specie di "frattale" - non so niente sui frattali, quindi non so se ho usato la parola a sproposito).
Qual è l'interpretazione corretta?
Si ... quale è l'interpretazione corretta?? si lascia la ricorsione "base" oppure bisogna apportare piccole modifiche in base alle dimesioni della stringa?
Se serve a qualcuno posso postare il sorgente, non è C, ma Pascal, ma credo che cambia poco.
Piacerebbe anche a me che ci si potesse scambiare le risoluzioni senza troppi patemi, ma così non è. Magari un giorno si rivedrà quest'impostazione, non so, ma al momento il regolamento lo vieta. Io l'ho buttata lì, hai visto mai...
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.