Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#126 17-09-2019 13:01:15
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Salut Yoshi,
As-tu regardé pour :
A = 45413
B = 3507065749624756498911323
Hors ligne
#127 17-09-2019 13:08:24
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
Re,
Oui,
Je comptais te questionner à ce sujet...
Pour Q = 3, 5, 7, 51 ou 105, j'ai arrêté les calculs chaque fois avec un M compris entre 3 000 000 et 4 000 000.
Y a-t-il une chance pour que ça se produise après ?
Pour quelle valeur de Q penses-tu plus probable qu'il y ait un résultat, bon ou mauvais parce que là quand je dis que j'ai arrêté les calculs c'est parce que l'affichage restait désespérément vierge...
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#128 17-09-2019 15:20:45
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
J'appréhendais ce résultat. Logiquement il doit y avoir un alignement, mais il est très loin (peut-être avec M proche du milliard ou même plus). Je ne pense pas que ça vienne de Q, on l'a vu avec l'essai précédent. Des Q plus élevés ne produisent pas nécessairement moins de M. Il y a une solution pour parer à cela, c'est d'augmenter la longueur de A tous les 30 T à peu près, jusqu'à ce qu'il se rapproche de B et finisse par produire un alignement "classique" situé dans la marge de 30 T. Pour cet exemple, on aurait B = 25 chiffres, A = 5 chiffres, donc 25 - 5 = 20 chiffres de A à augmenter, ce qui représente entre 500 et 600 T en tout, résultat très acceptable.
A + et merci.
Hors ligne
#129 17-09-2019 15:55:41
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Ne te fatigues pas pour le programme d'alignement "sûr". Pas nécessaire. On va passer à la phase suivante.
Hors ligne
#130 17-09-2019 18:00:36
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
Bonsoir
avec un peu de patience, j'ai obtenu ça :
*****************************
* Alignements de produits *
* Idée : cosinuspax *
*****************************
A = 45413
B = 3507065749624756498911323
P = 159266376887709066885059911399
*** Début du programme avec Q = 3 ***
P = 14800681899336860048601763072937085039
C = 1406748828031
D = 10521197248874269496733969
M = 30976789
*******************
*** Début du programme avec Q = 5 ***
P = 22374752763010491107133270909068460645
C = 1275981367923
D = 17535328748123782494556615
M = 28097273
*******************
*** Début du programme avec Q = 7 ***
P = 34605276849915860730767784248062322563
C = 1409614569983
D = 24549460247373295492379261
M = 31039893
*******************
Temps écoulé : 1099.87 s soit 18 min 17 s
Qu'est-ce que ça t'inspire ?
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#131 18-09-2019 08:10:08
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Salut,
Intéressant, c'est mieux que le milliard, mais c'est astronomique et impraticable. On voit bien que Q n'est d'aucune aide pour diminuer M.
Hors ligne
#132 18-09-2019 08:41:25
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Voilà mon système de T progressif :
T 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
T (9^1 x 7) 63 81 99 117 135 153 171 189 207 225 243 261 279 297 315 333 351 369 387 405 423 441
T ( 9^2 x 7) 567 729 891 1053 1215 1377 1539 1701 1863 2025 2187 2349 2511 2673 2835 2997 3159 3321 3483 3645 3969
T (9^3 x 7) 5103 6561 ...
T (9^4 x 7) ...
Je n'utilise que 22 nombres et les puissances de 9. Une fois que A est proche de B (il suffit de multiplier N par T + 1), la marge des 22 nombres doit être suffisante pour avoir un alignement.
-Si A et B sont proches, on trouve l'alignement très rapidement (T1 ou T2).
-Si A et B sont très éloignés, on finit toujours par trouver l'alignement moyennant un temps raisonnable.
-Si N est premier, alors A = T et B = N.
Dernière modification par cosinuspax (18-09-2019 14:16:33)
Hors ligne
#133 18-09-2019 08:50:47
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Evidemment tout ceci est théorique pour le moment.
Hors ligne
#134 19-09-2019 14:07:22
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Bonjour,
Voici un petit pseudo programme qui met en pratique ce système. On n'a pas les sous-produits, mais tous les produits alignés avec T x N si A x T ou B x T.
Par exemple, 29 x 71 ne marche pas avec T = 15 (qui pourtant donne un produit aligné) mais avec T = 23 (71 x 667). 1 x 1999 ne marche plus avec T = 57 mais avec T = 117 (niveau 2 du tableau T).
Programme test "alignement progressif".
Input A
Input B
N = A x B
P = N
V = 1
e = - 1
i = i + 1 (i = 0)
V = V + 2
Si V = 49, e = e + 1 et V = 7
Si e = - 1, T = V
Si e = 0, T = 49
Si T >= 49 x 9^e, T = 9 x (9^e x V)
R = sqrt entière de P
L = R^2 + R
Si L > P, P = N x T. Aller à next i.
Si L < P, S = P - L
Si P = N, alors si P > S^2, si A >=S, si B > S, print P, A et B. STOP.
Sinon, si A ou B < S, P = N x T. Aller à next i.
A = A x T
Si P > S^2, si A >= S, si B >= S, alors print P, A et B.
Si A et B >= S, alors STOP.
Si A ou B < S, P = N x T. Aller à next i.
Dernière modification par cosinuspax (22-09-2019 10:38:56)
Hors ligne
#135 19-09-2019 16:14:28
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
Salut,
Je n'essaie même pas, ce serait peine perdue... Je connais d'avance la sanction : message d'erreur disant que e n'est pas défini :
Si V = 49, e = e + 1 et V = 5
Ce e arrive en effet là comme un cheveu sur la soupe...
Il démarre de quelle valeur ? A partir de quelle ligne ?
En outre, je te l'ai déjà signalé si tu n'indentes pas tes blocs, c'est difficile à lire et ça m'oblige à me poser des questions qui ne devraient pas avoir lieu d'être...
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#136 20-09-2019 09:12:41
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Salut, je tente de corriger dans la mesure du possible.
Hors ligne
#137 20-09-2019 18:50:39
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
C'est corrigé. Pour calculer T, le programme fait V = V + 2, donc 3. Tant que e = - 1, T a la valeur de V + 2 donc ici 3. Quand V arrive à 49, le compteur e passe à 0 et V = 7. T a donc la valeur de 49 (puisque 49 x 9^0 = 49), ce qui implique T = 9 x (9^0 x 7) = 63 > 49 puis 81, 99 ... avec V + 2. Puis V parvient de nouveau à 49. Alors le compteur e passe à 1 et V = 7. T a donc la valeur de 49 x 9^1, ce qui implique T = 9 x (9^1 x 7) = 567 > 441 puis 729, 891 avec V + 2. Etc.
Tu as le principe.
Dernière modification par cosinuspax (20-09-2019 18:53:20)
Hors ligne
#138 20-09-2019 18:55:55
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
Salut,
Non, ce n'est pas corrigé, il y a deux lignes incohérentes :
Si A et B OR si A'et B' >= S, alors STOP.
Si A ou B AND si A' ou B' < S, P = N x T. Aller à next i.
SI A et B ou si (A'>=S et B'>=S) alors Stop
Si A et B font quoi ?
Si A ou B et (si A<S ou B'< S) alors P = N x T. Aller à next i.
Même problématique...
Un peu comme si j'écrivais en Géométrie : si les droites (D) et (D') alors l'angle B vaut 60°...
Sinon, je pense qu'une fois clarifiés les points gênants, la transcription sera vite faite...
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#139 21-09-2019 12:35:19
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Salut, bon, tu devines de quoi il en retourne.
Si A et B >= S OR si A'et B' >= S, alors STOP.
Si A ou B < S AND si A' ou B' < S, P = N x T. Aller à next i.
C'est juste un oubli.
Hors ligne
#140 21-09-2019 14:18:45
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
Re,
C'est juste un oubli.
Oui, je m'en doutais...
Cela dit, non, je joue pas aux devinettes : je ne comprends strictement rien au pourquoi de ce que tu fais. Je programme ce qu'on me demande, rien de plus.
Lorsque mon programme tourne à la satisfaction du demandeur alors c'est bien.
Je regarde ça tout à l'heure...
@+
[EDIT]
Autre chose
As-tu scrupuleusement testé ton code à la main comme le ferait la machine ? J'en serais surpris
Parce que ça :
1.
Si T >= 49 x 9^e alors en démarrant avec e =-1, il y aura plusieurs étapes probables où la machine va tester :
[tex]T>=49 \times \dfrac 1 9[/tex] soit $T>5,44444444444444... ,: ça présente un intérêt ? Je pensais que tu ne travaillais que sur des entiers ?
2.
A = A x T, B = 1 x B
Quel intérêt de multiplier 1 par B ?
3.
A' = A' x 1, B' = B' x T
Et hop, v'la A' et B' qui tombent du ciel !
Où les as-tu définis ? Combien valaient-ils au démarrage du script ?
Plantage assuré !
Corrections nécessaires avant tests (c'est en place)
Ca va prendre du temps puisque tu continues à faire l'économie de la délimitation des blocs (par indentation, c'est le plus simple)...
@+
Dernière modification par yoshi (21-09-2019 16:35:38)
Arx Tarpeia Capitoli proxima...
Hors ligne
#141 22-09-2019 10:08:35
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Salut Yoshi, je suis un peu déçu que depuis le début tu n'aie pas la moindre idée de ce que je veux faire.
Quand T >= 49, la variable e n'est pas égale à - 1 mais à 0, c'est précisé. Normalement, ce 0 apparaît quand V = 49 (- 1 + 1 = 0). Ensuite, tu as : si e = 0, T = 49. Donc si T est au moins = 49, tu ne peux pas multiplier 49 par 9^- 1. Si ça ne marche pas comme ça, je n'ai pas de meilleure idée pour l'instant.
Pour le reste je corrige.
Bon dimanche.
Hors ligne
#142 22-09-2019 10:31:37
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
RE,
Ok.
Mais là, ça ne marchera pas (Bis repetita non placent !) :
Si A ou B < S AND si A' ou B' < S, P = N x T. Aller à next i.
Qu'est-ce que c'est A' et B' ?
Où apparaissent-ils pour la première fois ?
Combien valent-ils à la première utilisation
Comment sont-ils modifiés ?
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#143 22-09-2019 10:35:25
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Regarde #134, c'est modifié.
Hors ligne
#144 22-09-2019 12:51:19
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
RE,
Peut-être, mais ça ne l'était pas quand j'ai rédigé.
1er essai
*************************************************
* Alignements progressif de produits *
* Idée : cosinuspax *
* v.2 *
*************************************************
A = 29
B = 71
P = 2059
*** Début du programme ***
P = 6177
A = 145
B = 71
P = 6177
A = 145
B = 71
*******************
Temps écoulé : 0.1 s soit : 0.0 min 0.1 s
2e essai :
*************************************************
* Alignements progressif de produits *
* Idée : cosinuspax *
* v.2 *
*************************************************
A = 73
B = 3692347
P = 269541331
*** Début du programme ***
P = 4043119965
A = 55845
B = 3692347
P = 4043119965
A = 55845
B = 3692347
*******************
Temps écoulé : 0.11 s soit : 0.0 min 0.11 s
Si ce n'est pas bon, ça vient de là :
Si P = N, alors si P > S^2, si A >=S, si B > S, print P, A et B. STOP.
Sinon, si A ou B < S, P = N x T. Aller à next i.A = A x T
Si P > S^2, si A >= S, si B >= S, alors print P, A et B.
Si A et B >= S, alors STOP.Si A ou B < S, P = N x T. Aller à next i.
Indenter, ce n'est pas sauter des lignes, c'est décaler des lignes vers la droite pour délimiter les blocs .
Je vais te le faire et tu me diras si c'est à ça que tu pensais.
Si P = N alors :
Si P>S^2 alors :
Si A >=S, ET si B >= S alors :
print P, A et B
Sinon si A<S ou B <S alors :
Stop
A=A*T
Si P>S^2 alors :
Si A >=S, ET si B >= S alors :
print P, A et B
Si A<S ou B <S alors :
Stop
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#145 22-09-2019 13:53:30
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Il y a un petit problème avec T.
29 x 71 = 2059
L > P donc P = N x T (T = 3)
P = 6177
Mais pourquoi A x T = 145 (T = 5) alors que ça devrait faire A x T = 87 (T = 3) ? Pourquoi prendre le T qui suit alors que ni A ni B ne sont inférieurs ?
Et pourquoi mets-tu STOP à la place de "aller à next i" ?
Dernière modification par cosinuspax (22-09-2019 14:21:27)
Hors ligne
#146 22-09-2019 14:42:47
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Je crois savoir d'où ça vient. Je corrige.
Hors ligne
#147 22-09-2019 17:34:53
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
RE,
Non,non. Je n'ai rien oublié...
Ton texte :
Si P = N, alors si P > S^2, si A >=S, si B > S, print P, A et B. STOP.
Sinon, si A ou B < S, P = N x T. Aller à next i.A = A x T
Si P > S^2, si A >= S, si B >= S, alors print P, A et B.
Si A et B >= S, alors STOP.Si A ou B < S, P = N x T. Aller à next i.
Je suis bien conforme à l'erreur éventuelle d'interprétation près due à l'ambigüité du pseudo code :
else: # le cas restant : soit P = N
if P>S**2:
if A>=S and B>=S:
print ("P =",P)
print(" A =",A)
print(" B =",B)
arret =1
break
elif A<S or B<S:
P=N*T
break
A*=T
if P>S**2:
if A>=S and B>=S:
if A>=S and B>=S:
print ("P =",P)
print(" A =",A)
print(" B =",B,"\n")
if A>=S and B>=S:
print ("P =",P)
print(" A =",A)
print(" B =",B)
arret=1
break
elif A<S or B <S:
P=N*T
break
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#148 22-09-2019 17:51:15
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Non, c'est ma conception qui plante. Le cycle des x9 n'est pas synchronisé avec N x T. Il faut que je reprenne à zéro. Désolé.
A ++
Hors ligne
#149 23-09-2019 09:24:28
- cosinuspax
- Membre
- Inscription : 23-02-2019
- Messages : 252
Re : Alignement de produits
Bonjour,
Nouvelle version (la bonne, j'espère) :
Input A
Input B
1 N = A x B
2 P = N
3 V = 1
4 e = - 1
5 i = i + 1 (i = 0)
6 Si i > 1, alors V = V + 2
7 Si V = 51, alors e = e + 1 et V = 7
8 Si e = - 1, alors T = V
9 Si e > - 1 et si V = 7, alors T = 51 x 9^e
10 Si T > 49 x 9^e, alors T = 9 x (9^e x V)
11 Si i > 1, alors P = N x T
12 R = sqrt entière de P
13 L = R^2 + R
14 Si L > P, alors aller à next i.
15 Si L < P, alors S = P - L
16 Si P = N, alors si P > S^2, si A >=S, si B > S, print P, A et B. STOP.
17 Sinon, si A ou B < S, alors aller à next i.
18 A = A x T
19 Si P > S^2, si A >= S, si B >= S, alors print P, A et B. STOP.
20 Si A ou B < S, alors aller à next i.
Je te rappelle que le principe de cet algo est d'aligner A et B dans un temps acceptable quand ils sont séparés par un écart important. Pour les produits classiques (sans grand écart) l'alignement se fait rapidement.
Désolé, je n'arrive pas à me faire à l'indentation. Je m'en tiens à la conception.
Bonne journée.
Dernière modification par cosinuspax (24-09-2019 15:36:43)
Hors ligne
#150 23-09-2019 10:02:27
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : Alignement de produits
Re,
*************************************************
* Alignements progressif de produits *
* Idée : cosinuspax *
* v.2 *
*************************************************
A = 29
B = 71
P = 2059
*** Début du programme ***
P = 6177
A = 145
B = 71
*******************
Temps écoulé : 0.09 s soit : 0.0 min 0.09 s
2e Essai :
*************************************************
* Alignements progressif de produits *
* Idée : cosinuspax *
* v.2 *
*************************************************
A = 73
B = 3692347
P = 269541331
*** Début du programme ***
P = 3504037303
A = 246375
B = 3692347
*******************
Temps écoulé : 0.09 s soit : 0.0 min 0.09 s
3e essai :
*************************************************
* Alignements progressif de produits *
* Idée : cosinuspax *
* v.2 *
*************************************************
A = 73
B = 6246403
P = 455987419
*** Début du programme ***
P = 1367962257
A = 45625
B = 6246403
*******************
Temps écoulé : 0.1 s soit : 0.0 min 0.1 s
4e essai :
*************************************************
* Alignements progressif de produits *
* Idée : cosinuspax *
* v.2 *
*************************************************
A = 73
B = 53217
P = 3884841
*** Début du programme ***
P = 11654523
A = 9125
B = 53217
*******************
Temps écoulé : 0.09 s soit : 0.0 min 0.09 s
Alors ?
@+
Arx Tarpeia Capitoli proxima...
Hors ligne