› Sviluppare funzionalita su Microsoft Office con VBA › Amici … Amici….I Numeri hanno degli Amici "Sfida di Halloween"
-
AutoreArticoli
-
la colonna D non serve a niente
l'ho aggiunta all'originale per mostrare il funzionamento
della formula in E e dimostrare che il risultato è esatto
Ciao,
purtroppo usi formule che nella mia ultima versione di Excel sono state rimosse (Let)
Posto anch'io la mia versione, ma non sono sicuro di aver capito bene.
Allegati:
You must be logged in to view attached files.Scusate, ma forse ci stiamo incartando, ho visto le vostre soluzioni, pero non rispecchiano quanto scritto nella pagina , che allego, perchè sempre secondo quello scritto, in un range(1 to 20000) si sono solo tre coppie di numeri Amici
(220-284 / 1184-1210 / 17896-18416)
Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
Sempre il mare, uomo libero, amerai!
( Charles Baudelaire )Allegati:
You must be logged in to view attached files.Ho letto la pagina ma, se non ho inteso male, l'autore fa solamente degli esempi di numeri amici, non dice espressamente che ci sono solo 3 coppie di numeri amici.
Seccondo me la versione che ho postato e' corretta.
ciao
Albatros
permetti dimmi perchè non sono amici
6232
3116-1-1558-779-328-164-152-82-76-41-38-19-8-4-2 ....totale 6368
6368
3184-1-1592-796-398-199-32-16-8-4-2....totale 6232
perchè non li consideri amici?
non mi pare che le colonne di output corrispondano a quanto richiesto, ma questo è relativo; ma 496 non ha amici (in quanto uguale solo a se stesso).
SI anche questo è vero però gl' altri 2 mi sembra che vadano bene , comunque aspettiamo Albatros
non dice espressamente che ci sono solo 3 coppie di numeri amici.
effettivamente è come dici tu, perchè nel testo c'è scritto
"La ricerca di numeri amici
ha prodotto finora la conoscenza di appena un centinaio di
coppie."
permetti dimmi perchè non sono amici
6232
3116-1-1558-779-328-164-152-82-76-41-38-19-8-4-2 ....totale 6368
6368
3184-1-1592-796-398-199-32-16-8-4-2....totale 6232
perchè non li consideri amici?
Sono Amici perchè sono stato condizionato dai tre valori scritti nella pagina.

SI anche questo è vero però gl' altri 2 mi sembra che vadano bene , comunque aspettiamo Albatros
Sono sempre qua!!
Quindi alla luce di tutto quanto è stato un ottimo esercizio.
Alla prossima.
Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
Sempre il mare, uomo libero, amerai!
( Charles Baudelaire )perchè sempre secondo quello scritto, in un range(1 to 20000) si sono solo tre coppie di numeri Amici
(220-284 / 1184-1210 / 17896-18416)
attenzione che Wikipedia (Numeri amicabili) dice :
Altri numeri amicabili sono ad esempio le coppie 1184 e 1210, 2620 e 2924, 5020 e 5564, 6232 e 6368, 17296 e 18416[1].
dove [1] rimanda a questo elenco (parziale)
A063990 Amicable numbers. 220, 284, 1184, 1210, 2620, 2924, 5020, 5564, 6232, 6368, 10744, 10856, 12285, 14595, 17296, 18416, 63020, 66928, 66992, 67095, 69615, 71145, 76084, 79750, 87633, 88730, 100485, 122265, 122368, 123152, 124155, 139815, 141664, 142310che comprende esattamente quelli estratti dal mio codice (per n = 200 .. 20.000)
ciao
Scossa
se non hai il LET()
sostituiscilo con una formula (tanto quello è)
la base della formula è
=A.RIGA(UNICI(SE(x-y;1;y)))
perciò diventerà
=SOMMA(A.RIGA(UNICI(SE(x-y;1;y));3);-A1)

non capisco se non hai Let()
non dovresti neanche avere A.RIGA()
che versione hai
non capisco se non hai Let()
non dovresti neanche avere A.RIGA()
Infatti .... Excel 2010 !!
Infatti .... Excel 2010 !!
allora la tua formula base è
da tirare a destra e in basso
=SE.ERRORE(AGGREGA(15;6;RIF.RIGA($A$1:$A$10000)/(RESTO($A1;RIF.RIGA($A$1:$A$10000))=0);COLONNE($A$1:A$1));"")
ma ti servono tante tante colonne e tanta pazienza
-
AutoreArticoli
