PPCM directement par decomposition en facteurs premiers.Pour simplifier, dans un premier temps on fera uniquement avec les facteurs premiers 2 et 3.
1ère phase decomposer un nombre A en facteurs premiers.
Imput A
0 -> s
While PartDec(A/2)=0
A/2-> A
S+1-> S
0-> P
While PartDec(A/3)=0
A/3-> A
P+1->P
end
end
S,P
si on demande P seul ou S seul ça marche si on demande S et P on n'obtient qu'un seul (puissance du facteur prem ier).
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 04 Fév 2012, 19:38
Pourquoi pas mais le problème est qu'il faudra écrire ces boucles pour tous les diviseurs premiers.
Tu es proche de la méthode classique de décomposition mais il te manque encore l'usage d'une boucle autour de tout ça qui commanderait quel diviseur tester.
Des programmes de décomposition en facteurs premiers et détermination de diviseurs, il y en a beaucoup dont tu peux t'inspirer pour t'améliorer le plus possible.
Tu pourras parmi eux trouver les miens dont je suis assez fier. (via des sujets ou via ma signature)
----
Je pense qu'il trop lourdingue d'utiliser une décomposition pour déterminer un ppcm. On peut même le calculer à partir du pgcd qui, lui, est facile à trouver.
Et sinon les fonctions pgcd et ppcm sont prévues par les TI dès la 82stat.
edit:
Code
Prompt A,B
AB->C
While B
A-ent(A/B)*B->R
B->A
R->B
End
Disp C/A
Cela calcule le pgcd puis en déduit le ppcm.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Mon but est de pouvoir calcculer le PPCM sans avoir le PGCD. Bien sûr ce programme ne m'interesse que sur son principe. J'y propose que 2 facteurs premiers 2 et 3. La suite serait identique et sans fin..De toute façons on serait obligé de les passer dans l'ordre croissant.
La 2ème methode avec le PGCD,vu ce qu'on a fait sur le sujet (et ce code que tu proposes ) ne pose pas de difficulté.
Aussi dans le code que j'affiche comment se fait-il qu'on n'obtienne pas les 2 puissances mais seulement la 1ère (celle de 2)?
Rq ; où se trouvent tes programmes dont tu parles
monsaibert Invité
Posté le : Mar 07 Fév 2012, 17:59
Citer : monsalbert
Mon but est de pouvoir calcculer le PPCM sans avoir le PGCD. Bien sûr ce programme ne m'interesse que sur son principe. J'y propose que 2 facteurs premiers 2 et 3. La suite serait identique et sans fin..De toute façons on serait obligé de les passer dans l'ordre croissant.
La 2ème methode avec le PGCD,vu ce qu'on a fait sur le sujet (et ce code que tu proposes ) ne pose pas de difficulté.
Aussi dans le code que j'affiche comment se fait-il qu'on n'obtienne pas les 2 puissances mais seulement la 1ère (celle de 2)?
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 07 Fév 2012, 23:05
Mon programme DECOMPO est périmé dans les sujets où je l'ai posté voire même dans sa version à telécharger...
Parfois j'ai même abandonné certaines options.
DIV ne concerne pas directement ton problème.
Je poste une version simplifiée de decompo afin que tu comprennes mieux la manoeuvre qu'avec la version optimisée.
EDIT : il y a une erreur dans la simplification. Le code ne trouve pas toujours le dernier facteur. Voir prochain message pour une autre simplification et une correction.
Code
Prompt A
ClrList L1
DelVar U
While 0=fPart(A/2 // teste 2
U+1->U
2->L1(U
A/2->A
Disp W
End
// ce for teste les diviseurs impairs (deux fois plus rapide)
For(W,3,rac(A),2 // rac(A) pas recalculé donc pas de problème de mise à jour
While not(fPart(A/W // correspond à tes while, W remplace 2,3,5...
U+1->U
W->L1(U)
A/W->A
Disp W
End
If A=1
Goto 1
End
Lbl 1
Pause L1
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 409
Inscrit le : Lun 07 Nov 2011, 12:09
Posté le : Ven 10 Fév 2012, 19:26
La TI peut bloquer peut être parce que tu n'a pas refermé la parenthèse
Le Goto renvoi automatiquement au Lbl correspondant (ou Label) peut importe sa place dans le prog
Par contre cela ralentit les boucles comme While ou For
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Ven 10 Fév 2012, 21:10
Goto envoie au Lbl du même nom. L'étiquette du Goto est un ou deux caractères alphanumériques.
Pour en savoir un peu plus sur le conflit boucle/goto, consultez mon article là-dessus.
Il faut effectivement refermer la parenthèse autour de A dans rac(A).
La TI peut bloquer si le nombre à décomposer a des facteurs trop grands.
Teste 60 pour voir.
Je veux bien t'expliquer le chemin. (mais vaut mieux pas tout en une seule fois)
Par contre je corrige un problème et effectue une autre simplification.
Code
Prompt A
ClrList L1
DelVar U // U servira à stocker les facteurs premiers trouvés dans L1
// ce for teste des diviseurs W
For(W,2,A // défile tous les diviseurs W de 2 à A
While not(fPart(A/W // correspond à tes while ; W remplace 2,3,5...
// not(A) revient à A=0 dans les tests
U+1->U
W->L1(U // stocke le résultat
A/W->A // stocke le résultat, cela sabre les diviseurs non-premiers plus tard
Disp W
End
If A=1
Goto 1
If W>rac(A // ajoûté pour résoudre un manque
Then // sert à éviter les diviseurs suppérieurs au dernier A
A->L1(U+1 // stocke aussi le dernier A (forcément premier)
Disp A
Goto 1
End
End
Lbl 1
Pause L1
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Celà va beaucoup mieux! il y a quelques précisions à apporter.La parenthèse à rac(A) a changé les choses.
. Cependant les essais ( sur le code de mardi 07) donnent des resultats bizarres :
9180 donne bien [ 2^2*3^3*5*17]
17280 donne bien [2^7*3^3*5]
mais 60 affiche [2 2 3] oublie le 5!!..
48 affiche [2 2 2 2] oublie le 3...
ces résultats étant entre crochets et attribables à L1 (pause)
mais que dire des chiffres alignés verticalement à droite ( que j'attribue aux disp ) et qui me paraissent anarchiques ?..
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 14 Fév 2012, 20:43
Les nombres affichés sur la droite sont les résultats intermédiaires.
Il permettent de s'assurer que le programme n'est pas planté.
Et si un des facteurs est long à trouver, on peut prendre en note quelques résultats en attendant la fin.
====
Quand j'ai posté le message du mardi 7, j'ai retiré des complications de ma version finale. Mais j'ai de toutes évidence commis une ou plusieurs erreurs de simplification.
C'est une astuce indispensable que j'ai voulu ajoûter dans le message du vendredi 10. (en plus d'un simplification supplémentaire)
Je commence à renoncer à certaines pseudo-simplifications. Autant utiliser tout.
remarque :
Cet algorithme fonctionne globalement comme le crible d'ératostène, et d'ailleurs comme le premier code de ce sujet.
propriétés :
- un nombre qui n'a pas de facteur premier suppérieur à sa racine carrée est premier
- un nombre possède un OU aucun facteur premier suppérieur à sa racine carrée.
- la première propriété s'applique aussi au nombre A intermédiaire de mon algorithme en cours de travail
conséquences :
- avoir atteind la racine carré ne signifie pas que les facteurs ont tous été trouvés (prop2) (problème classique que j'ai probablement généré mardi 7)
- prop3-> un W suppérieur à la racine du A intermédiaire prouve que cet intermédiaire est nécessairement premier, et donc est le dernier facteur premier.
aspect pratique :
J'ai tenté d'expliquer le bug du mardi 7 avec la première conséquence mais cela ne suffit pas :
Mon code du mardi 7 s'arrête à la racine carrée alors qu'un des facteurs premiers peut être plus grand que la racine.
Or 5 est plus petit que la racine de 60...
mardi 7 je voulais supprimmer l'usage le la prop3 mais j'ai aussi supprimmé l'usage de la prop2. (il semble)
====
Le code du vendredi 10 devrait être optimal. (testé)
Il utilise la propriété 3 (et 1) pour trouver le dernier facteur.
Si A initial est premier, on trouve bien A comme unique et dernier facteur premier.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
une satisfaction le bug n'est pas une erreur de "bidouillage" mais un problème de fond et dans ce cas c'est bon ..celà oblige à aller voir "le crible d'ératostène"!..je te remercie : je ne connaissais pas..Par contre le premier jour ou j'ai vu les codes avec "racine de A" j'ai su que c'était un point névralegique. Perçons l'abcés :
"un nombre possède un OU aucun facteur premier suppérieur à sa racine carrée."
ET
"avoir atteind la racine carré ne signifie pas que les facteurs ont tous été trouvés (prop2) (problème classique que j'ai probablement généré mardi 7)"
les deux sont liés. Aurais-tu une doc. precisant cette affaire mathematique ?
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 16 Fév 2012, 19:15
Le code du vendredi 10 fonctionne dans tous les cas.
Je vais écrire un algorithme lisible traduisant clairement celui du vendredi 10.
Code
Saisir A // A initial
Pour W de 2 à A // A initial
Tant que A multiple de W
stocke W dans Liste1
A:=A/W
Afficher W
FinTantQue
Si A=1 // division terminée
Alors Goto 1 // aller à la fin
Si W>rac(A // la valeur actuelle de A est un nombre premier
Alors
Stocke A dans Liste1
Afficher A
Goto 1 //aller à la fin
FinSI
FinPour
Label 1
Afficher Liste1 puis attendre
Pour faciliter les considérations suivantes, j'appellerai A0 la première valeur de A saisie.
* Supposons que "Si W>rac(A" soit vrai
Si A=A0 alors A0 est premier et donc on a trouvé son unique facteur premier c'est-à-dire lui-même.
Si A=/=A0 alors A est premier et donc on a trouvé le dernier facteur premier de A0, c'est-à-dire A.
* Supposons que "Si W>rac(A" soit faux tout au long de l'exercice.
Cela arrive quand A0 est un carré parfait. (je n'en voit pas d'autre)
Si "A=1" est vrai, cela valide la situation de sortie et on a trouvé tous les facteurs premiers.
---
Le fait qu'un nombre qui n'ait pas de facteur premier inférieur à sa racine est démontré dans les cours de maths dès la première, peut-être avant.
(et rappelée en maths spé terminale)
---
J'ai démontré moi-même l'an dernier qu'un nombre ne peut avoir plus d'un facteur premier suppérieur à sa racine carrée. Je ne sais donc pas quelle référence te donner.
Le cas limite est quand son plus grand facteur premier est égal à la racine carrée et donc le multiple est un carré parfait d'un unique nombre premier.
Il y a une embrouille si A0 est un carrée parfait comme 36=2*2*3*3.
Sa racine carrée n'est pas un nombre premier, d'où la distinction des deux tests de sortie.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
- " J'ai démontré moi-même l'an dernier qu'un nombre ne peut avoir plus d'un facteur premier suppérieur à sa racine carrée."
c'est un point serieux. as-tu gardé le document ? Peux tu me le passer ?
Bien entendu celà sous-entend qu'il peut avoir un facteur premier de plus !!..
( le "W inferieur à racine de A" en prend un coup!
- je parle du code du mardi ( je n'ai pas essayé encore le dernier ) je ne vois pas pourquoi 60 et 17280 qui se termine de la même façon avec le même code l'un va jusqu'au bout (17280) et l'autre non (60)
60 /2___17280 /2
30 /2___ .........
15 /3___ 15 /3
5 /5 ___ 5 /5
1 ____ 1 la TI donne 2^7*3^3*5 pour 17280 et 2^2*3 pour 60
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Ven 17 Fév 2012, 21:09
Parmi toutes les choses que je n'ai pas su dire simplement précédemment, tu viens de comprendre la plus importante : la possibilité d'un facteur premier suppérieur à la racine et différent de A0.
Le plus délicat est le fait qu'il ne peut y avoir plus d'un facteur suppérieur à la racine.
Montrer qu'il existe des nombres à un facteur premier différent du multiple et suppérieur à leur racine, cela est en revanche facile. Par exemple 6=2*3 et 3>rac(6)=2.4
Je ne me souviens pas de la démonstration complète. Elle est rangée dans un cahier chez moi.
Je n'ai jamais eu de réelle confiramtion de ma démo, mais je n'ai jamais trouvé de contre-exemple.
Je vais tâcher de la retrouver. Elle contient un raisonnement par l'absurde.
=======
code du mardi 7 :
J'ai de nouveau testé mais sans la distinction paire/impaire, et je n'ai plus eu de problème avec le nombre 60.
Une chose est sûre : 17280 et 60 n'ont pas la même racine carrée.
Ce n'est donc pas la terminaison qui pouvait provoquer le bug.
==>> En effet For(W,3,rac(A),2) ne calcule rac(A qu'une seule fois au début.
(démonstrations ICI, )
Grande négligence de ma part :
Quand la fonction For effectue le calcul rac(A), ce n'est pas rac(A0) mais rac(A/2^N) car on a déjà divisé A par ses facteurs 2.
Il aurait fallut stocker la racine de A0 dans une variable avant de diviser A0 par 2.
60=2*2*3*5
rac(60)=7.7
rac(3*5)=3.8 <5
Comme dans mes derniers tests je n'avais pas séparé la division par deux, il est logique que je n'ai pas eu de problème tout-à-l'heure avec 60 contrairement aux autres jours.
rappel : on parle bien du code du mardi 7
===
En conclusion, le programme du mardi 7 ne calculait pas une racine juste mais en plus il s'arrêtait à la racine (juste ou non).
(cela causait donc deux problèmes)
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Lun 20 Fév 2012, 18:14
J'ai réécrit mes propos mathématique (concernant la propriété du nombre de facteurs suppérieurs à la racine carrée) soit de mémoire soit par recherche.
J'ai essayé d'être rigoureux et clair... ce qui n'est pas mon point fort.
Remarquons que cette propriété répond à une curiosité mais n'est pas exploitée dans la dernière version du programme présentée dans ce sujet.
Une fois cette page tournée nous pourrons exploiter la décomposition en facteurs premiers dans ton projet de départ : déterminer le ppcm sans le pgcd.
Tu signaleras quand tu seras prêt pour la suite.
=========
Soit A un entier naturel suppérieur à 1 qui se décompose en une série de nombres premiers P1,P2,..,Pn.
A=P{1}*P{2}*...*P{n}
Pour n donné, Je note :
R=P{n}
A=PR
Si n>2, Q=P{n-1}
A=PQR
Si n=1
Alors A est premier et n'a qu'un facteur premier suppérieur à sa racine : lui-même
Si n>1
{A=PR
{racA<R
<=> racA<A/P
<=> A<A^2/P^2
<=> AP^2<A^2
<=> P^2<A
<=> P<racA
Donc si un nombre a un facteur premier suppérieur à sa racine alors le produit P de ses autres facteurs est inférieur à sa racine.
Donc si n=2, P est premier et P<racA
Donc si n=2, Il ne peut y avoir qu'un seul facteur premier suppérieur à la racine.
(cette étape est la plus importante et la première que j'ai écrite l'an dernier) Si n>2 :
A=PQR
Supposons que racA<Q<=R
A<Q^2<=R^2
P*Q*R < Q^2 <= R^2
P < Q^2 /QR <= R^2 /QR
P < Q/R <= R/Q
Or Q <= R donc Q/R <= 1
Donc P<=1
Ceci est absurde car P>1
Donc racA<Q<R est impossible.
Conclusion : un nombre NE peut PAS avoir plus d'un facteur premier suppérieur à sa racine.
-----
n>1
A=PR
0<racA<R
<=> A<R^2
<=> PR<R^2
<=> P<R
Ce qui est tout-à-fait possible mais pas systématique.
De plus cette relation est réciproque pour les entiers positifs.
Démo par l'exemple :
2*3=6
2<rac(6)=2.45<3
Conclusion :
Pour un nombre composé de deux facteurs ou plus, il peut y avoir ou non un facteur suppérieur à sa racine
---
Conclusion globale : un nombre (entier positif suppérieur à 1) a exactement UN OU AUCUN facteur premier suppérieur à sa racine carrée.
============
Autre démo dont je doûte franchement de la rigueure à la dernière équivalence :
{A=PR
{racA<R
<=> racA<A/P
<=> A<A^2/P^2
<=> AP^2<A^2
<=> P^2<A
<=> P<racA
<=> P{1}P{2}...P{n-1}<racA
<=> P{1}<racA et P{2}<racA et ... P{n-1}<racA
car tous les P sont des entiers suppérieurs à 1.
Conclusion : si un nombre a un facteur premier suppérieur à sa racine, alors tous les autres facteurs premiers (s'ils existent) sont inférieurs à la racine.
Donc un nombre ne peut pas avoir plus d'un facteur premier suppérieur à sa racine.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
bonsoir linka,
-je rentre de week-end , je n'ai pas bossé ton dernier message. Je te donne les derniers résultats :
concernant ton dernier code
Saisir A // A initial
Pour W de 2 à A // A initial
Tant que A multiple de W
stocke W dans Liste1
A:=A/W
Afficher W
FinTantQue
j'ai fait ( j'espère ne pas trahir ta pensée):
imput A
effliste L1
0-> U
For (W,2,A)
While non(partDec(A/W)
U+1-> U
A/W-> A
W-> L1(U)
end
end
Pause L1
pairs et impairs ensembles ( un peu surpris ) pas de condition (rac A) mais celà marche tès bien. On obtient tout dans les petites valeurs 60,48 , 15,12,10 et même 6,5,et 3 mais dans les nombres plus grands ex: 2160 il faut environ une minute.Pour des nombres plus grands !...
je n'ai pas compris la 2 ème partie de "Si A=1 // division terminée" à "Afficher Liste1 puis attendre " . J'ai essayé de l'introduire dans le code mais celà ne donnait rien.
-- par contre interessé par ton observation justifiée ne pas confondre A0 et A notamment quand on ellimine les nombres pairs le code devient
imput B
B->A
effliste L1
effVar
0-> U
While non(partDec(A/2)
U+1-> U
A/W-> A
W-> L1(U)
end
For(W, 3,rac(B),2)
While non(partDec(A/W)
U+1-> U
.......idem
Là il fonctionne bien mais pas dans les petits nombres
pour 12 il donne 2*2*3
pour 15 il donne 3
pour 10 il donne 2
pour 6 il donne 2
erreur pour 3 ou 5
Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 21 Fév 2012, 20:36
ça a l'air intéressant, mais j'ai plusieuresremarques/questions:
1)
Citer
Soit A un entier naturel suppérieur à 1 qui se décompose en une série de nombres premiers P1,P2,..,Pn.
A=P{1}*P{2}*...*P{n}
Pour n donné, Je note :
R=P{n}
A=PR
Si n>2, Q=P{n-1}
A=PQR
Pourrais tu reexpliqué <e passage s'il te plais, je ne l'ai pas vraiment compris (quelle lettre et quelle notation corespond à quoi)?
2) coté rigueur :
Citer
0<racA<R
<=> A<R^2
Non équivalent : le "0<" n'étant pas gardée, la réciproque n'est pas démontrée vraie (même si elle l'est)
3)Pour la deuxième démo :
soit K le plus grand diviseur premier de A et P{1},P{2},...,P{n-1} les autres diviseurs premiers.
A=K*P{1}*P{2}*...*P{n-1}
Si K>rac(A)
alors A/K<rac(A)
donc rac(A)<P{1]*P{2}*...*P{n-1}
d'où K est le seul diviseur strictement suppérieur à la racine.
Bon, j'ai plus le temps de faire les autres cas.
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 21 Fév 2012, 21:07
monsalbert : tu pouvais recopier le programme du vendredi 10
Désolé de ne pas avoir rappelé que l'algorithme que tu as suivi traduisait lisiblement le code executable.
=====
sandro :
1)
Par exemple pour A=2*3*5*7=6*5*7, P=6, Q=5, R=7.
60=2*2*3*5=4*3*5 , P=4 Q=3, R=5
300=2*2*3*5*5=12*5*5 , P=12, Q=5, R=5
375=3*5*5*5=15*5*5 , P=15, Q=5, R=5
Mais si j'ai moins de trois facteurs il serait incorrect de définir Q comme avant dernier facteur si je définit aussi P comme différent de 1.
Par exemple, A=2*3 avec P=2 et R=3.
Si A est premier la question ne se pose pas.
---
3)
C'est sympatique comme manière de faire.
Sauf que tu t'es trompé de sens pour la dernière inéquation de ton message.
Le passage d'un produit à un ensemble d'inéquations n'est pas plus montré dans ton message que dans le miens et c'est selon moi ce qui pêche. :S
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 21 Fév 2012, 22:12
Ok, sinon pour ma preuve de ta seconde version:
soit K le plus grand diviseur premier de A et P{1},P{2},...,P{n-1} les autres diviseurs premiers, classé par ordre croissant (si n<3, alors on rajoute des 1 en tant que facteurs pour optenir au moins 3 facteurs).
A=P{1}*P{2}*...*P{n-1}*K
Si K>rac(A)alors A/K<rac(A)
donc rac(A)>P{1}*P{2}*...*P{n-1}
d'où K est le seul diviseur strictement suppérieur à la racine (car chaque facteur est supérieur ou égal à 1).
Preuve de la dernière déduction
Supposons P{n-1} supérieur ou égal à rac(A)
on a donc P{n-1}*K > A (en multipliant terme à terme avec K>rac(A) (tout est positif))
or P{1}*P{2}*...*P{n-2} supérieur ou égal à 1
Donc P{1}*P{2}*...*P{n-2} * P{n-1}*K > A (multiplication membres à membres permise car tout est strictement positif)
or P{1}*P{2}*...*P{n-2} * P{n-1}*K=A
d'où A>A, ce qui est absurde
On a donc P{n-1}<rac(A)
pour tout p<n-1, P{p} inférieur ou égal P{n-1}
donc : pour tout p<n-1, P{p}<rac(A)
Si K=rac(A)alors
Donc chaque diviseur premier est inférieur ou égal à rac(A), K étant le plus grand facteur premier.
Si K<rac(A)alors tous les facteurs premiers sont strictement inférieurs à rac(A), K étant le plus grand facteur premier.
Bref, dans tous les cas, seul K peut être strictement suppérieur à rac(A).
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mer 22 Fév 2012, 0:27
Quand tu as écris
rac(A)<P{1}*P{2}*...*P{n-1}
ce devait être un copier-coller de ton propre message précédent car il y a exactement la même erreur :
le sens de l'inégalité est inversé par rapport aux autres lignes de la démonstration et cette proposition est le contraire de l'objectif.
Le reste est vachement bien ficelé.
La formalisation est ton point fort.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)