Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#51 23-08-2019 09:19:33

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

OK, je reprends le fil.

Hors ligne

#52 23-08-2019 09:38:39

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Je t'ai envoyé ce lien parce qu'il m'a semblé intéressant qu'un utilisateur de Python (celui du forum en question) se pose la question des racines entières exactes de très grands nombres entiers. Dans la mesure où mon algo repose sur cette exactitude, je ne pouvais pas ne pas réagir. Loin de moi l'idée de te contredire.

Hors ligne

#53 23-08-2019 10:18:16

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Test avec A et B de 27 chiffres (N de 54 chiffres).

A = 526515024552525727314611161
B = 923595420290990949567693871
N =486286865391111418136140881546559916271703833847894231

P = N x 21
10212024173213339780858958512477758241705780510805778851
L =
10212024173213339780858958511391966859073257190959623430
R = 3195625787418379777532430594
S = 1085791382632523319846155421

C (A x 7) = 3685605171867680091202278127
D (B x 3) = 2770786260872972848703081613
F (A x 3) = 1579545073657577181943833483
G (B x 7) = 6465167942036936646973857097

Hors ligne

#54 23-08-2019 11:33:42

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 946

Re : Alignement de produits

Salut,

Ok !

Loin de moi l'idée de te contredire.

Je n'ai pas considéré que tu me contredisais, mais comme de l'info-scepticisme très répandu, beaucoup plus qu'on ne le croit... Mais tu avais le droit au scepticisme. Vois-tu mes élèves avaient une consigne, celle de questionner tant qu'ils ne s'estimeraient pas convaincus par mes réponses...
J'ajoutais que si on me posait 10 fois la même question, je pousserais sûrement une "gueulante"... Mais qu'alors ils devraient s'abriter, laisser passer l'orage puis poser leur 11e question et que, pression retombée, je répondrais...

Je pense que tu dois chercher à comprendre mon pseudo-code (le dernier publié) que je crois conforme à ta dernière modif.
Je n'ai pas programmé qu'en Python... Il y a longtemps, on pouvait bourrer les lignes, c'était franchement illisible.
Et de plus tu as remarqué qu'il y a un décalage systématique : l'indentation, la clé de voûte de Python. En Python, c'est obligatoire, et c'est bien, ça permet d'avoir un programme plus clair et lisible pour le profane et on se dispense du fin si, fin pour, fin tant que...
C'est naturellement que dans mon pseudo-code j'ai repris cette technique : ça délimite plus encore les blocs.
Tu vois, quand tu  écris :

Si P = N, alors si P > S^2, si A >= S,  si B >= S alors print P, A et B. STOP.
Sinon, si A ou B < S alors P = N x T. Aller à next i.

le doute est permis : le Sinon se rapporte-t-il au Si rouge ou au si bleu ?
Dans mon pseudo-code avec indentation, toi tu ne peux pas douter de mon choix :

                 SI  P = N ALORS
                      SI P > S^2 ET (SI A >= S ET  B >= S) ALORS
                            AFFICHE VALEUR de P, A et B
                            AFFICHE VALEUR de i, M, S, L>P (là on aura TRUE ou FALSE)
                            i=0
                            break
                       FIN SI
                  SINON
                       SI (A<S ou  B < S) ALORS
                            P = N x T.
                            break   # retour à la ligne i=i+1
                       FIN SI                  
                  FIN SI

Moyennant quoi voilà ce que donne ta dernière suggestuin

Avec : A = 526515024552525727314611161  B = 923595420290990949567693871  N = 486286865391111418136140881546559916271703833847894231  R = 697342717314170721480007684  L = 486286865391111418136140882015486134880218426179051540

Si Q = 3
P = 10212024173213339780858958512477758241705780510805778851   C = 3685605171867680091202278127   D = 2770786260872972848703081613  S = 1085791382632523319846155421  M = 9

P = 10212024173213339780858958512477758241705780510805778851   F = 1579545073657577181943833483   G = 6465167942036936646973857097  S = 1085791382632523319846155421  M = 9

Si Q = 5
P = 2431434326955557090680704407732799581358519169239471155   C = 526515024552525727314611161   D = 4617977101454954747838469355  S = 497794454220776571648446399  M = 3

P = 2431434326955557090680704407732799581358519169239471155   F = 2632575122762628636573055805   G = 923595420290990949567693871  S = 497794454220776571648446399  M = 3


                     *******************

Temps écoulé : 0.16 s

Qu'en penses-tu ?

Autre souci.
Mon interprétation de ta phrase :

Entendons-nous bien : lorsque P = N on a forcément i = 1. Dès que l'on fait P = N x T, P est supérieur à N et i > 1

Moi j'ai compris que
SI P==N  alors je dois passer i à 0 et faire retour à la ligne i=i+1 pour que ligne suivante on reprenne à i=1 et dans ce cas à M=1.
que j'ai traduite comme ça :

SI  P = N ALORS
    SI P > S^2 ET (SI A >= S ET  B >= S) ALORS
        AFFICHE VALEUR de P, A et B
        AFFICHE VALEUR de i, M, S, L>P (là on aura TRUE ou FALSE)
        i=0
        break
    FIN SI
SINON

C'est ce que tu voulais dire ?

@LEG
Je ne t'ai pas oublié, j'ai eu d'autre priorités et ton œuvre ne peut se traiter d'un regard rapide comme je peux le faure avec des maths classiques...
Je m'y replongerai avec un œil que j'espère neuf, dans quelques temps...

@+

@+


Arx Tarpeia Capitoli proxima...

En ligne

#55 23-08-2019 16:05:52

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Dans mon pseudo-code, SINON signifie "si la condition juste avant n'est pas remplie" alors faire ceci (j'ai repris ton propre pseudo-code).
P=N tant qu'on n'a pas P = N x T. P ne peut pas être égal à N si i = 2, la condition étant P = N x T. On ne va au prochain i que si P = N x T.
Cela dit je crois qu'on finit par se comprendre. Tes résultats sont identiques aux miens.

Hors ligne

#56 23-08-2019 16:38:36

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Bonjour LEG,

Dans ton exemple : P = 3135, 55 est tout à fait par hasard la racine de P. C'est parce qu'il fait partie du produit aligné qui suit 55 x 55 (S^2). Ce n'est donc pas un bon exemple à traiter.
55 et 57 sont les diviseurs (alignés) de P = N x 15, c'est tout.
Ton exemple 181 x 211 est aligné avec 905 x 633 (N x 15). Le but pour moi est de retrouver le produit initial une fois qu'il est aligné, c'est à dire 181 x 211 en divisant 905 par 5 et 633 par 3. Evidemment l'algo final (lequel détecte les produits une fois alignés) ignore le produit initial.

Dernière modification par cosinuspax (24-08-2019 08:45:47)

Hors ligne

#57 24-08-2019 09:01:42

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Bonjour,

Malheureusement, il y a une foule de produits pseudo alignés (ce serait trop beau de pouvoir les aligner aussi facilement). Un exemple : 97 x 223. Avec T = 3 on a : 223 x 291 (3 x 97) qui semble aligné puisque les deux facteurs > S (123). Mais l'ennui est que l'on peut avoir des produits formés à partir de facteurs inférieurs à S (ici, 3 et 97) qu'il est difficile de distinguer des produits vraiment alignés. Toutefois il y a un test qui permet de faire un tri élémentaire.

Hors ligne

#58 24-08-2019 10:33:41

LEG
Membre
Inscription : 19-09-2012
Messages : 690

Re : Alignement de produits

@Yoshi , pas de problème pour ma résolution.....passe une bonne journée
@+

Hors ligne

#59 24-08-2019 21:58:28

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Un produit est-il bien aligné ?  TEST.
Nous appellerons nos deux diviseurs X et Y.
Soient X et Y >= S.
On vérifie si X et Y appartiennent à S.
X - S = K.
E = racine entière de K.
Si E^2 + E + S = X alors X appartient à S.
Y - S = K.
E = racine entière de K.
Si E^2 + E + S = Y alors Y appartient à S.
Si (X ou Y) ou (X et Y) appartiennent à S, le produit est toujours aligné.
Si le résultat est différent de X ou Y :
-  Si X ou Y < H, le produit n'est pas aligné.
H = [2(S - 1) + 2(S - 1) + 2] + 1
- Si X et Y > H le produit est peut-être aligné (ce n'est pas certain).
Je n'ai pas de test actuellement pour vérifier cette dernière condition.
Ex : 37 x 131. Aligné avec A et B > S (17).
Vérif : 37 - 17 = 20. 4 x 4 + 4 = 20.
Ex : 97 x 223. Aligné avec T = 3 : 223 x 291 (3 x 97). S = 123.
Vérif : 223 - 123 = 100. 10 x 10 + 10 = 110, et 223 < H (491) donc produit non aligné. Essayer avec T = 9, T = 15, etc.
On a donc 3 formes de vérif :
- Aligné sûr
- Non aligné sûr
- Aligné non sûr

NB : si X appartient à S, S est une suite évidemment (pour moi, S est à la fois un nombre et une suite).

Dernière modification par cosinuspax (26-08-2019 09:02:13)

Hors ligne

#60 25-08-2019 11:27:21

LEG
Membre
Inscription : 19-09-2012
Messages : 690

Re : Alignement de produits

@cosinus :
tu peux nous dire , d'où il sort ton S car un peu plus haut tu me dis que 55*55 (S²) alors que 55 était la racine R donc R² qui devient maintenant E.....et non S² , racine entière de 3135, dont tu as dit que 55 c'est un diviseur.....de P =3135 = 55*57

puis tu dis:  Si E^2 + E + S = X alors X appartient à S....c'est le shimiliblik total...
donc X n'est plus un diviseur mais une somme

de plus si X et Y appartiennent à S...  exemple :X=1,Y=2 donc 1 et 2 ça fait 3 oui ou non , S = 3 ,ok,  3 >= à S=3
on vérifie : 1 - S = -2 = -K ....??? ; oui ou non ???? donc E racine entière de -K   ....ok mais passons on inverse S - X= 2 = K, racine entière de K = 1 = E

E² + E + S  = X  qui n'est plus égal à 1 .????? alors le schimiliblik appartient à S = 3 ???? qui vaut maintenant  1²+1+3 = 5. Haaa, tient  un nombre premier... qui appartient à 3....

ça ne va pas être facile à programmer....tu ne crois pas  ?????

Dernière modification par LEG (25-08-2019 11:29:46)

Hors ligne

#61 25-08-2019 12:36:27

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 946

Re : Alignement de produits

Salut,

Bon, moi le S ne me dérange pas...
C'est plutôt, dans la kyrielle de variables A, B, C, D, F, G... qui sont X et Y ?
Oui, je sais, tu as écrit :

Nous appellerons nos deux diviseurs X et Y.

ce qui ne m'aide pas non plus...
Qui sont nos deux diviseurs ?
D'autre, tu as répondu à LEG que 55 et 57 étaient des diviseurs "alignés"
Ou j'ai raté un épisode ou je ne sais toujours mas ce que sont des diviseurs "alignés", des produits "alignés" (si tu me l'as déjà précisé, rappelle-moi le n° du post. En attendant, je vais re-re-vérifier) et comme ce vocabulaire t'es personnel (ce qui ne me dérange pas), à part toi, je n'ai aucun moyen d'en trouver une définition claire...

@+


Arx Tarpeia Capitoli proxima...

En ligne

#62 26-08-2019 08:55:42

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Salut Yoshi (et Leg)

S, on connaît, c'est : P - L (voir mon organigramme) quand L est inférieur à P. U(S) est une suite de nombres entiers où tous les produits sont "alignés" à partir de S^2. Elle est d'ordre : S + 2 + 4 + 6 + 8 + 10 + 12 + 14 ... + 2n.
Par ex, pour S = 41, on a : 41, 43, 47, 53, 61, 71, 83 ... 1681 (S^2). A partir de là, tous les produits sont alignés, c'est à dire qu'on peut les détecter avec un algorithme (on verra ça dans un second temps).
Donc, aligner un produit, c'est faire en sorte qu'il appartienne à une suite de produits d'origine S^2. Dorénavant, je dirai "suite" et non "ensemble".
Par ex, (55 X 57) est le deuxième produit de la suite de produits d'origine 55^2 (S = 55).
Maintenant, X et Y sont les diviseurs simplifiés de P, c'est tout. C'est pour faire comprendre la théorie. Dans notre programme, X et Y peuvent être A et B, C et D ou F et G.
C'est peut-être un peu plus clair ? J'espère.

Dernière modification par cosinuspax (02-09-2019 09:27:38)

Hors ligne

#63 26-08-2019 12:49:00

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Le produit 11 x 19 n'est pas détectable par mon algorithme car il n'est pas aligné. Par contre, 55 x 57 est aligné dans la suite 55 (S = 55). Ce produit est donc détectable. 55 x 57, c'est 11 x 19 aligné.
Clear ?

Dernière modification par cosinuspax (26-08-2019 12:49:59)

Hors ligne

#64 26-08-2019 15:16:31

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Yoshi, pas la peine de modifier le programme. Ce test d'alignement exact n'est pas obligatoire pour avancer. Ce qui m'importe est de savoir grosso-modo si tous les produits peuvent s'aligner.

Hors ligne

#65 27-08-2019 07:50:38

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Salut,

Voici la solution de l'exemple à 60 chiffres.

A = 456677434437440644486475995861
B = 353983300754723083028038875227

N =
161656185622363884157409873825181107869683925399877147435447

N x 9 =
1454905670601274957416688864426629970827155328598894326919023
R = 1206194706753961409298471526252
L = 1454905670601274957416688864426348344578516031528496796693756
S = 281626248639297070397530225267
A x 3 =
1370032303312321933459427987583
B x 3 =
1061949902264169249084116625681

Hors ligne

#66 27-08-2019 09:23:48

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 946

Re : Alignement de produits

RE,

Avec :
A = 456677434437440644486475995861  B = 35398330075472308302803887522
N = 16165618562236388415740987382198436582862184088847181546442  R = 127144085832713384670350202972
L = 16165618562236388415740987382156213739004062505271947835756


Si Q = 3
P = 1018433969420892470191682205078501504720317597597372437425846
F = 1370032303312321933459427987583   G = 743364931584918474358881637962
S = 323916251783848869361275524536  M = 23

Si Q = 5
P = 80828092811181942078704936910992182914310920444235907732210
C = 456677434437440644486475995861   D = 176991650377361541514019437610
S = 176126910364656200400270641490  M = 3

Si Q = 7
P = 113159329935654718910186911675389056080035288621930270825094
C = 456677434437440644486475995861   D = 247788310528306158119627212654
S = 35990694642649874373475058282  M = 3

Si Q = 9
P = 5674132115344972333925086571151651240584626615185360722801142
F = 4110096909936965800378283962749   G = 1380534872943420023809351613358
S = 1031958517107321340970146890372  M = 41


                     *******************

Temps écoulé : 0.16 s

Qu'est-ce ça t'inspire ?

@+


Arx Tarpeia Capitoli proxima...

En ligne

#67 27-08-2019 12:27:41

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Salut Yoshi,

Tout d'abord, je constate que ça marche. Ensuite, tu ne peux pas avoir le même résultat que moi car tu as omis le dernier chiffre de B (7). N doit toujours être impair !

Hors ligne

#68 27-08-2019 14:33:41

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 946

Re : Alignement de produits

Re,


Exact, c'est corrigé :

Avec :
A = 456677434437440644486475995861  B = 353983300754723083028038875227
N = 161656185622363884157409873825181107869683925399877147435447  R = 402064902251320469766157175417
L = 161656185622363884157409873825149816064279559058721866299306


Si Q = 3
P = 161656185622363884157409873825181107869683925399877147435447
A = 456677434437440644486475995861 B = 353983300754723083028038875227
i = 1 M = 1 S = 31291805404366341155281136141 L<P : True

Si Q = 5
P = 161656185622363884157409873825181107869683925399877147435447
A = 456677434437440644486475995861 B = 353983300754723083028038875227
i = 1 M = 1 S = 31291805404366341155281136141 L<P : True

Si Q = 7
P = 161656185622363884157409873825181107869683925399877147435447
A = 456677434437440644486475995861 B = 353983300754723083028038875227
i = 1 M = 1 S = 31291805404366341155281136141 L<P : True

Si Q = 9
P = 161656185622363884157409873825181107869683925399877147435447
A = 456677434437440644486475995861 B = 353983300754723083028038875227
i = 1 M = 1 S = 31291805404366341155281136141 L<P : True


                     *******************

Temps écoulé : 0.17 s

Et voilà où je voulais en venir depuis un certain temps :
si, il faut corriger le programme : il ne me donne ni C ni D, ni F ni G...
Et tu peux constater que j'ai chaque fois i=1  et M=1 (*)
Je vais tâcher de mettre en lumière mes points d'interrogation...
Je crains que pour effacer ces interrogations, cela ne prenne pas mal de temps parce que si je te demande si tu as compris ledit prg, tu me diras soit non, je ne suis pas programmeur, soit non, je n'y comprends rien, je n'ai pas cherché...
Dis-moi que je me trompe !

@+

[EDIT]
Déjà, ça, c'est douteux :


                if P==N:
                    if P>S**2 and A>=S and B>=S:
                        print ("P =",P)
                        print("A =",A,"B =",B)
                        print ("i =",i,"M =",M,"S =",S,"L<P :",(L<P),"\n")
                        i=0                               <---------  Ici
                        break
                    elif A<S or B<S:
                        P=N*T
                        break
                C=A*(M-2)
                D=B*Q
 

Je t'avais questionné :

Moi j'ai compris que
SI P==N  alors je dois passer i à 0 et faire retour à la ligne i=i+1 pour que ligne suivante on reprenne à i=1 et dans ce cas à M=1.
que j'ai traduite comme ça :

SI  P = N ALORS
    SI P > S^2 ET (SI A >= S ET  B >= S) ALORS
        AFFICHE VALEUR de P, A et B
        AFFICHE VALEUR de i, M, S, L>P (là on aura TRUE ou FALSE)
        i=0
        break
    FIN SI
SINON

C'est ce que tu voulais dire ?

à ce sujet et tu avais répondu :

P=N tant qu'on n'a pas P = N x T. P ne peut pas être égal à N si i = 2, la condition étant P = N x T. On ne va au prochain i que si P = N x T.

Donc, j'ai rajouté i=0 et retour à la ligne i=i+1 pour obtenir 1, mais retombe aussi sur M=1 et les mêmes causes produisent les mêmes effets :
avec le i=0 que j'ai rajouté le programme répète sans fin les mêmes lignes, pour qu'il s'arrête, je suis obligé avant le i=0 de rajouter stop =1  et on passe au Q suivant.

Conclusion, j'en suis toujours au même point...

Dernière modification par yoshi (27-08-2019 14:53:29)


Arx Tarpeia Capitoli proxima...

En ligne

#69 28-08-2019 08:32:24

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Salut, effectivement c'est incompréhensible que ça ne marche pas pour les 30 chiffres. Et pourtant qu'est-ce qui change ?  Rien du tout. Je tente de regarder.

A ++

Hors ligne

#70 28-08-2019 09:05:28

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Si c'était le programme, ça ne marcherait pas pour les nombres inférieurs. Normalement, pour notre exemple, tu dois trouver T = 9. C'est mathématique.

Dernière modification par cosinuspax (28-08-2019 09:12:26)

Hors ligne

#71 28-08-2019 10:01:07

LEG
Membre
Inscription : 19-09-2012
Messages : 690

Re : Alignement de produits

@cosinus : tu dis un peu plus haut
S on connait c'est P - L, ce à quoi: @Yoshi répond ça ne me gène pas...

Alors  ton post#65 ci dessus , comment tu trouves ton S :

N x 9 =
1454905670601274957416688864426629970827155328598894326919023
R = 1206194706753961409298471526252
L = 1454905670601274957416688864426348344578516031528496796693756
S = 281626248639297070397530225267

car là, je ne vois P nul part dans ce post.....? sauf si P = N, et dans ce cas montre nous comment tu as pu trouver ce S cité ci dessus

il y a quelque chose dans ton algorithme qui change ....quelque part ....d'où je suppose @Yoshi en est au même point , sans solution....

et tu dis à @Yoshi tu devrais trouver T = 9...  où ça ????
de quel T tu parles puisqu'il n'apparait nul part , dans les post ci-dessus , sauf si Q = T....donc si tu changes sans arrêt ......le chimiliblik va aussi changer....

Hors ligne

#72 28-08-2019 13:08:00

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Surprise. Ton L est inférieur à N, donc tout est normal, on a un alignement avec P = N. Le programme s'arrête toujours à STOP. L'ennui est que mon L à moi est supérieur à N.
Je refais mes calculs.

Dernière modification par cosinuspax (28-08-2019 13:09:03)

Hors ligne

#73 28-08-2019 13:23:08

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

C'est OK, c'est moi qui ai fait l'erreur : L est bien inférieur à N dès le départ du programme, donc P = N, A et B > S et STOP. Q n'entre jamais en ligne de compte puisqu'on n'a jamais P = N x T.

Hors ligne

#74 28-08-2019 13:30:31

cosinuspax
Membre
Inscription : 23-02-2019
Messages : 252

Re : Alignement de produits

Salut LEG. S, c'est P - L quand L < P. J'ai écrit N x 9 (T = 9), c'est pareil, c'est P avec Q = 3 et M = 3 (5 - 2 dans le programme puisque c'est décalé d'un cran).
Quant à T, si, il apparaît dans le pseudo-code. C'est Q x M.

Dernière modification par cosinuspax (28-08-2019 13:32:05)

Hors ligne

#75 28-08-2019 14:21:18

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 946

Re : Alignement de produits

RE,

Je suis en train de reproduire à la main ce que devrait faire mon programme...
Je voulais voir s'il y avait des bizarreries...
Réponse oui, il ne passe pas par les points où je l'attendais...
Donc, je vais creuser...
Mais je m'interromps pour retourner à ma revue qui ne va se faire seule...

@+


Arx Tarpeia Capitoli proxima...

En ligne

Pied de page des forums