Page 1 sur 1
Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 13:18
par Ar-S
Bonjour,
Je me suis replongé dans les contests online.
Pour l'un d'eux, je dois trouver les modulos de très grands nombres.
Ex : 500000^180351 divisé par 30931
J'essaye donc en ecrivant
Mais j'obtiens NaN
Re: Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 13:40
par Marc56
Re: Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 13:49
par Ar-S
Oui... mais peut on resoudre ce soucis en PB ?
On peut en python, C, php, javascript..
Re: Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 14:33
par zaphod_b
Salut,
Pour calculer le modulo de très grands nombres :
Code : Tout sélectionner
Procedure emod(n.s,modulo)
Protected lrv=1,rez
n=ReverseString(n)
;
For i=0 To Len(n)-1
If i>0
lrv=(lrv*10)%modulo
EndIf
rez+lrv*Val(Mid(n,i+1,1))
Next
rez=rez%modulo
ProcedureReturn rez
EndProcedure
Debug 12346789%97
Debug emod("12346789",97)
Debug emod("123123456487897456123122348987456456789456",97)
Re: Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 15:29
par Guillot
chapeau !
t'en a beaucoup des codes dans le genre ?
Re: Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 19:23
par Shadow
Pas mal
Se qui manque à Pure Basic, c'est une lib pour calculer sur de très grand nombre.
zaphod_b, si jamais tu ne sais pas quoi faire, vue que t'es plutôt bon on dirait ^^
Re: Trouver le modulo d'un grand nombre
Publié : ven. 09/sept./2016 21:07
par Zorro