Quesito esame di maturità
Hai un problema con Excel? 
Quesito esame di maturità
di giovanni (utente non iscritto) data: 23/06/2013 12:10:59
Un quesito della prova di matematica del liceo scientifico è il seguente:
Con le cifre da 1 a 7 è possibile formare 5040 numeri corrispondenti alle permutazione delle 7 cifre. Se i 5040 numeri ottenuti si dispongono in ordine crescente quale numero occupa la settima posizione e quale la 721°?
La domanda è la seguente:
Esiste una formula o procedura in vba che mi consente di scrivere i 5040 numeri in una colonna?
Grazie
giovanni
di Vecchio Frac data: 23/06/2013 16:07:55
cit. "Esiste una formula o procedura in vba che mi consente di scrivere i 5040 numeri in una colonna? "
---> Non credo che esista una funzione incorporata. Bisognerà studiarla ma non credo che sia impossibile... si tratta di scambiare posto alle cifre fino a ottenere tutte le combinazioni no? una specie di anagrammatore.
Il primo numero è 1111111 e l'ultimo è 7777777, arrivati a 1111117 si passa a 1111121.
Sarebbe interessante che ci si sforzasse, prima di produrre qualcosa, a descrivere l'algoritmo in pseudocodice.
Chi comincia? ^_^
di Vecchio Frac data: 23/06/2013 16:40:46
Forse però sto sbagliando qualcosa... non sono uno statistico e mi manca il concetto di "permutazione" perchè la permutazione di un numero a sette cifre non dà solo 5040 risultati. Probabilmente intendi che le sette cifre non devono essere ripetute...
Inoltre all'inizio mi sembrava di aver capito perfino tutt'altro, cioè una conversione di un numero in base otto :)
di Vecchio Frac data: 23/06/2013 16:45:43
Ho trovato, tra le mie fonti (*), giusto il programmino adatto... testato e funziona perfettamente. Le permutazioni sono proprio 5040... e sono anche in grado di rispondere alla domanda iniziale se interessa :)
(*) il solito amico r, dal suo sito e90e50 :)
di giovanni (utente non iscritto) data: 23/06/2013 17:58:33
Le permutazioni sono semplici altrimenti avrei scritto con ripetizioni. Detto questo ho cercato di risolvere il quesito ma l'unica cosa che posso fare è scriverli a mano e forse finirei per il mio prossimo compleanno a settembre.
Scherzi a parte non so davvero come si faccia.
grazie vecchio frac
di Vecchio Frac data: 23/06/2013 20:42:12
Ti allego il file... la sub che ti interessa provare è "test_Anagramma_RE()" (l'ho già impostata sulla stringa iniziale "1234567"). Ma anche le altre sub e functions citate sono interessanti.
Bisogna ringraziare l'amico r... nel commento al codice ci sono i riferimenti al suo sito ^_^
di giovanni (utente non iscritto) data: 24/06/2013 06:10:07
Vuoi Approfondire?