Au secour les mathématiciens...
Publié : dim. 24/sept./2006 12:20
Bonjour
J'ai besoin d'un petit code qui permet de retrouver un nombre qui a été multiplié par la somme de ses chiffres.
Je m'explique 534 * (5+3+4) = 534 * 12 = 6408
Bon, jusqu'a la, ça va.
**********************************************************
Maintenant, je ne connais que le 6408 et je veux que le pc me retourne 534.
Ayant arreté les math en 4e, c'est un peu fort pour moi.
Neanmoins, j'ai fait comme a la maternelle avec les patates et j'ai pondu ça :
Ca marche, mais faut pas abuser du nombre a$, autrement il vaut mieux aller se coucher avant d'avoir la réponse ....
Est ce qu'un fana de math, pourrait améliorer mon code.
Merci d'avance
Bonne journée.
J'ai besoin d'un petit code qui permet de retrouver un nombre qui a été multiplié par la somme de ses chiffres.
Je m'explique 534 * (5+3+4) = 534 * 12 = 6408
Bon, jusqu'a la, ça va.
**********************************************************
Maintenant, je ne connais que le 6408 et je veux que le pc me retourne 534.
Ayant arreté les math en 4e, c'est un peu fort pour moi.
Neanmoins, j'ai fait comme a la maternelle avec les patates et j'ai pondu ça :
Code : Tout sélectionner
a$ = "534"
For i = 1 To Len(a$)
x + Val(Mid(a$,i,1))
SommeChiffre$ = Str(x)
Next
b$ = Str(Val(SommeChiffre$) * Val(a$))
Debug b$
Debug "***********************"
a = 0
b = 0
c = 0
d = 0
e = 0
f = 0
g = 0
h = 0
i = 0
j = 0
k = 0
Nombre$ = Space(20)
Repeat
x + 1
PokeS(@Nombre$, "000000000" + Str(x), Len("000000000" + Str(x)))
a = Val(Mid(Nombre$, Len(Nombre$), 1))
b = Val(Mid(Nombre$, Len(Nombre$) - 1, 1))
c = Val(Mid(Nombre$, Len(Nombre$) - 2, 1))
d = Val(Mid(Nombre$, Len(Nombre$) - 3, 1))
e = Val(Mid(Nombre$, Len(Nombre$) - 4, 1))
f = Val(Mid(Nombre$, Len(Nombre$) - 5, 1))
g = Val(Mid(Nombre$, Len(Nombre$) - 6, 1))
h = Val(Mid(Nombre$, Len(Nombre$) - 7, 1))
i = Val(Mid(Nombre$, Len(Nombre$) - 8, 1))
j = Val(Mid(Nombre$, Len(Nombre$) - 9, 1))
k = Val(Mid(Nombre$, Len(Nombre$) - 10, 1))
Until ((k*10000000000)+(j*1000000000)+(i*100000000)+(h*10000000)+(g*1000000)+(f*100000)+(e*10000)+(d*1000)+(c*100)+(b*10)+a) * (a+b+c+d+e+f+g+h+i) = Val(b$)
b$ = Str(Val(Str(k) + Str(j) + Str(i) + Str(h) + Str(g) + Str(f) + Str(e) + Str(d) + Str(c) + Str(b) + Str(a)))
Debug b$
Est ce qu'un fana de math, pourrait améliorer mon code.
Merci d'avance
Bonne journée.