Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 04-09-2021 15:52:53
- A Ratomahenina
- Invité
Methode de calcul approximatif de la factorielle d'un nombre
Bonjour,
Je suis Alain Ratomahenina et je vous présente ma dernière immersion dans les mathématiques d’où je suis ressorti avec cette méthode.
Cette méthode consiste en un grand espoir pour les mathématiques car il s’avère qu’elle arrive à donner la valeur exacte pour le nombre 27, il devrait en être de même pour tous les nombres. Tout ceci dépend de l’identification mathématique de la fonction P(N) qui est semblable en tout point à une fonction logarithmique.
On peut quand même utiliser cette méthode pour une meilleure précision que la fonction de Stierling pour les nombres compris entre 22 et 32 et notamment les nombres comportent des décimales ex : 23, 732.
Approximation de Alain Ratomahenina.
F ( N ) = ( ( N-1 ) ^4 x ( N-2 ) x N x ( ( N^ ( N-7) ) / A ) ) / ( N + 3 )
Où
A = ( ( 2+P ) ^ ( N-7 ) ) x (N/7)
Et
Si N < 10 calculez alors avec I N – 10 I au lieu de I N – 7 I
P = ( ( ( ( I N – 7 I ) ^ 1.2519732063 ) / 5,67 ) - 0.946 ) / N
N N ! F(N)
7 5040 4536
13 6227020800 6394159268
25 1 551121004E25 1 551464 3E25
27 1 088886945E28 1 088886945E28
53 4 274883284E69 4 271664039E69
#2 04-09-2021 17:39:12
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 17 129
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour,
Têtu à ce que je vois : tu te tiens sur le fil du rasoir...
Et comme tu as la grosse tête, la verticale passant par ton nouveau centre de gravité risque de tomber (et toi avec) en dehors de ton polygone de sustentation...
Reste bien assis !
from math import factorial
print(factorial (53))
print (factorial(99))
print(factorial(123))
Réponses :
4274883284060025564298013753389399649690343788366813724672000000000000
933262154439441526816992388562667004907159682643816214685929638952175999932299156089414639761565182862536979208272237582511852109168640000000000000000000000
12146304367025329675766243241881295855454217088483382315328918161829235892362167668831156960612640202170735835221294047782591091570411651472186029519906261646730733907419814952960000000000000000000000000000
Affichage instantané.
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#3 14-09-2021 09:57:45
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Boujour
Comme je le disais la fonction P dont je n'ai réussi à trouver l'équation exacte est semblable semblable en tout point à une fonction logarithmique. Voici ma version de la fonction P avec un logarithme :
( Log ( I N - 7 I. )^2 / ( N / ( 5.9366 + ( N / ( N - ((( N + 1 ) / 32 )^ 4.28 )))) ~ N!
Cette nouvelle fonction fournit nous dirons une bonne équivalence de la factorielle d'un nombre .
#4 15-09-2021 08:04:08
- Wiwaxia
- Membre
- Lieu : Paris 75013
- Inscription : 21-12-2017
- Messages : 427
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour,
Peut-être pourrais-tu regarder du côté de la formule de Stirling
Hors ligne
#5 15-09-2021 11:00:34
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
Je connais bien sûr la fonction de Stirling mais GOOGLE ne lui reconnais pas le statut d'approximatif, la résolution de cette dernière etant trop faible contrairement à ma méthode qui elle donne dix chiffres exacts pour le nombre 27 . J'aurais besoin de votre aide à tous pour trouver la forme mathématique exacte de la fonction P(N) car mes versions sont insuffisantes pour obtenir LA VALEUR EXACTE de la factorielle d'un nombre. Ma méthode repose sur des relations mathématiques vraies et devrait donc fournir des résultats exacts ce qu'à tendance à faire cette méthode .
#6 16-09-2021 13:07:52
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour.
Voici une autre version de la fonction P(N) toujours avec un logarithme.
I log ( N / 10 ) I × ( ( - ( ( N / 10 ) - 6 )^ 1.16 / 98 ) + .5226 ) = P(N)
Cette version donne de meilleurs résultats que la fonction de Stirling .
#7 25-09-2021 10:10:07
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
J'ai découvert quelque chose d'intéressant dans les logarithmes :
Quand on élève la valeur de x au carré alors la valeur du logarithme correspondant est doublée ; quand on élève la valeur de x au cube alors la valeur du logarithme correspondant est triplée, etc....
#8 25-09-2021 10:22:15
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 17 129
Re : Methode de calcul approximatif de la factorielle d'un nombre
Re,
Alors si c'est bien cela dont tu veux parler :
$\ln(x^2)=2\ln(x)$
$\ln(x^3)=3\ln(x)$
......
$\ln(x^n)=n\ln(x)$
alors bravo, tu viens de réinventer la roue : c'est connu de tout lycéen sérieux qui "mange" des Maths...
Propriété du log :
$\ln(a\times b)=\ln(a)+\ln(b)$ (C'est sur cette propriété entre autres qu'est basé le principe de la "Règle à calculs")
d'où
$\ln(x^2)=\ln(x\times x)=\ln(x)+\ln(x)=2\ln(x)$
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#9 01-10-2021 16:23:53
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour.
^
La version précédente de la fonction P(N) présentait un defaut : le logarithme ne coïncidait pas en 0 avec P(N); c'est cette légère différence que j'ai ajouté au x du logarithme. Ce qui donne cette version de la fonction P(N) :
Log ( ( N / 10 ) + A ) × ( ( ( I ( N / 10 ) - 6 I )^B / 100 ) + C )
Où
A = 0.0432 B = 1.05070839 et C = 0.520587616
Cette version permet d'obtenir une approximation de N! pour les nombres compris entre 32 et 56 . Cela permet de calculer la factorielle de nombres comme 37.523 et obtenir 4 chiffres exacts.
#10 08-10-2021 21:50:27
- A TA Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
J'a commis une petite erreur A n'est pas égal à 0.0432 mais 0.04032 . Ça ne devait pas marcher .....
#11 15-10-2021 20:49:49
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonsoir .
Il faut utiliser ma méthode pour avoir de meilleurs résultats que par la fonction de Stirling tout du moins pour les valeurs inférieures à 60 , valeur maximale qu'accepe ma Ti 83 .
Voici une version de P(N) qui donne une approximation des valeurs de N > 18 et N< 60 .
P(N) = ((( - (( N /10 ) - 6 ) ^ A )/ B ) + C ) × Log (( N / 10 ) + D )
Où
A = 1.05115435 ; B = (((( N / 10 ) - 4 )^4 ) ( N < 34 )) +100 ; C = 0.5205783332 ;. D = 0.04032
#12 21-10-2021 13:39:31
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour .
Quand même , pour la fonction P(N) , il n'y a pas moyen avec les développements limités d'établir une façon de calculer sa valeur ? J'ai besoin de votre aide pour ceci et ce ne devrait impossible d'en trouver l'équation . Le résultat en vaut la peine .
#13 09-12-2021 13:03:18
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour .
Pour obtenir une meilleure précision pour les factorielles des nombres N supérieur à 20 et inférieures à 45 Il faut ajouter au terme (( N / 10 ) -6 )
la fonction suivante
(((( N /10 ) - 4.66 ) ^ 2.08 / 255 ) - 0.012 ) ( N < 45 ))
Vous obtiendrez ainsi une meilleure précision pour les nombres de 20 à 45 .
#14 22-01-2022 18:38:44
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
Voici une version de P(N) avec la fonction racine :
( - (( N - 50 ) / 93 )^ 2.48 ) + ( √( N / 10 ) / 6 ) = P(N)
#15 31-01-2022 16:02:17
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
Ça y est ! J'ai trouvé ! Ça marche ! La factorielle d'un nombre 10 chiffres exacts !
C'est grâce à la forme factorisee qui est une alternative aux développements limites et qui permet d'obtenir approximation de F(x) avec seulement son tracé .
La forme factorisee (x - a ) ( x - b ) ( x - c ) =0 s'annule pour x = a b ou c : on peut donc moduler une courbe à volonté et trouver une approximation de l'erreur entre P(N) et sa première version .
On détermine la forme de l'erreur graphiquement et on cherche son approximation ce qui nous rapproche de la valeur exacte .
J'ai pû échantillonner 3 valeurs exactes de F(N) :
10! = 3628800
F(10) = 3628800
30! = 2652528598 E 21
P(30) = 2653528598 E 21
60! = 8320987113 E 72
F(60) = 8320988113 E 72
Il y a donc maintenant le moyen d'obtenir la factorielle d'un nombre avec 10 chiffres exacts notamment pour N = 47.36 .
#16 27-03-2022 15:46:59
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
voici quelques explications :
La forme factorisèe comme les devellopements limitès permet d'obtenir une approximation de F(x) et fournir un moyen de calcul autre que la fonction si on ne la connait pas .
On determine graphiqement la courbe d'erreur entre la valeur exacte de P(n) que j'ais determinè grace à un programme de rèsolution et la premiére version de P(n) dans le premier message . Grace à la forme factorisèe on obtient graphiquement une approximation de P(n) .
On rajoute donc a P(n) la forme factorisèe de l'erreur :
(((N - 7 )^1.2519732063 / 5.67 ) - 0.946 ) / N ) + ((( N + 130 ) ( 250 ( N - 27 ) ^ 2 ) (( N - 52 ) / 450 ) ( N - 75 )) / 10 ^10 ) ) = P(N)
On determine une deuxiéme fois l'erreur :
P(N) + ( - (( N - 4.5 ) ( N - 23.55 ) ( N - 27 ) ((( N - 45.15 ) ^2 / 130 ) + 0.05 ) (N - 60.8 ) ^ 1.688 ) / 44 E8 ) = P(N)
Voici quelques exemples :
25! = 1.551121004 E25
F(25)=1.55110661 E25
38!= 5.230226175 E44
F(38)=5.230229738 E44
48!= 1.241391559 E61
F(48)=1.241411351 E61
#17 27-03-2022 16:57:11
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 17 129
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour ô émule de Saint Simon,
24!=620448401733239439360000
48!=12413915592536072670862289047373375038521486354677760000000000
72!=61234458376886086861524070385274672740778091784697328983823014963978384987221689274204160000000000000000
96!=991677934870949689209571401541893801158183648651267795444376054838492222809091499987689476037000748982075094738965754305639874560000000000000000000000
120!=6689502913449127057588118054090372586752746333138029810295671352301633557244962989366874165271984981308157637893214090552534408589408121859898481114389650005964960521256960000000000000000000000000000
144!=5550293832739304789551054660550388117999982337982762871343070903773209740507907044212761943998894132603029642967578724274573160149321818341878907651093495984407926316593053871805976798524658790357488383743402086236160000000000000000000000000000000000
168!=252607574497319838753801886917134114678628321660161899636045172255501630469951484784279524860515748677740723676917456344471493998101035608260664837215715659672830848592352788164518364067464570288846442542901808782229015393754650015551921726612213033664926565007360000000000000000000000000000000000000000
192!=354996793146960497053355363383973425965094809743694491885455534984190204750249968830591340591162785093141951525209177997501478084577063512837513105442388103085116949108248219929177667335850225156399124325817472036634653562449665740610033707601842063277098323069015230061026956365247457276593902258859903874498560000000000000000000000000000000000000000000000
216!=10020433703146107793945530580431357292843659510789309313207995121373860606589847385945865560132189286729581631646771816292076748699480508994205891351735346846175840399711009180476263461053865430706302603038547814701315906976472960428480208333486967446000761264392925098038248675260009865190052218097905890960111329206361438189114736515107632937864524405156085760000000000000000000000000000000000000000000000000000
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#18 27-03-2022 17:34:51
- Bernard-maths
- Membre
- Lieu : 34790 Grabels
- Inscription : 18-12-2020
- Messages : 1 444
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour !
Je pense à la formule de Stirling : n! # (n/e)n Racine(2 Pi n)
Ainsi 48! = (48/e)48 racine(2 Pi * 48) = 1,2392382664425288984015892835297*1061
Y'a un pb de précision avec la calculette !!!???
NON ! C'est la formule qui n'est pas précise ... :-))
B-m
Dernière modification par Bernard-maths (27-03-2022 17:47:45)
Ma philosophie est immuable : l'immobilisme tue ...
Les Anciens ont trouvé le plus facile ... il nous reste le plus dur !
Hors ligne
#19 04-04-2022 16:54:39
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
Cette méthode permet de réaliser un programme consistant à la fonction réciproque de la factorielle d'un nombre .
Il suffit d'y entrer la factorielle d'un nombre et celui ci vous retourne le nombre dont c'est la factorielle 16
#20 14-04-2022 13:42:15
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
La nouveauté outre le fait que l'on peut maintenant obtenir 10 chiffres exacts sur une factorielle est la forme factorisee comme outil de détermination .
Je dois dire que j'ai fait un programme donnant le cosinus d'un angle 9 ou 10 chiffres exacts grâce à la forme factorisee .
Ce serait bien si ceci devenait connu : on aurait autre chose que les développements limites ...
@Yoshi . J'aimerais bien avoir ton avis .
#21 19-06-2022 18:10:56
- A Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
Comme vous l'avez compris la forme factorisee peut aussi bien approximer une fonction comme les développements limités et je voulais faire remarquer que le prétendu auteur de cette forme ( François Viete ) qui l'aurait découverte en 1600~ ne m'a pas été enseigné à l'école et tout comme vous en même temps que le second degré au collège ou au lycée avant 1996 car ELLE N'EXISTAIT PAS ENCORE ! Je ne peux en dire plus car je suis comme vous : je ne sais pas....
#22 20-06-2022 10:40:00
- Wiwaxia
- Membre
- Lieu : Paris 75013
- Inscription : 21-12-2017
- Messages : 427
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour,
... Je pense à la formule de Stirling : n! # (n/e)n Racine(2 Pi n)
Ainsi 48! = (48/e)48 racine(2 Pi * 48) = 1,2392382664425288984015892835297*1061
Y'a un pb de précision avec la calculette !!!???
NON ! C'est la formule qui n'est pas précise ...
Une calculatrice programmable peut calculer de grandes factorielles ... mais c'est beaucoup plus lent.
Il suffit pour cela de ramener chaque nouveau produit entre 1 et 10; on trouve ainsi:
200! = 7.886578674.E374 .
Hors ligne
#23 12-09-2022 16:06:28
- A Ratomahénina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour,
Comme je le disais, la fonction P (N) est semblable en tous points à une fonction logarithmique. Ce qui en diffère c'est la forme de la base du logarithme qui se calcule par la fonction suivante:
(6,2 x (N/10 ) ^ 1,028 ) + 42,55 = B(N)
Il suffit ensuite de calculer le logarithme avec sa base appropriée pour obtenir la fonction P(N).
exemples:
17! =3,556... E 14
F(14) = 3,549... E 14
25! = 1,551... E 25
F(25) = 1,551 ... E 25
61! = 5,075... E83
F (61) = 5,031... E83
#24 12-09-2022 21:37:36
- Gui82
- Membre
- Inscription : 03-08-2022
- Messages : 125
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour,
Tu ne trouves pas que c'est plus précis avec la formule de Stirling, qui existe déja depuis longtemps?
Hors ligne
#25 06-11-2022 18:42:33
- À Ratomahenina
- Invité
Re : Methode de calcul approximatif de la factorielle d'un nombre
Bonjour
Pour répondre à gui82 effectivement c'est moins précis mais c'est grâce à la forme factorisee qui corrige les erreurs ma formule devient plus précise :
On reprend l'équation de B(N) précédente et on lui ajouté : (((6.2(N/10)^1.03+42.55) + (((N/10) - 2.55)((N/10)- 5.1))/10.5)) = B(N)