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).

#126 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 11-07-2014 14:42:54

0^0

Re re,

En fait, j'ai réfléchi:

- Il serait encore mieux que comme dans la modification que je viens de faire dans mon programme plus haut, le tien puisse fonctionner pour des 'périmètres min' et 'max' choisis.

- Il serait de plus 'encore encore' mieux que seuls s'affichent les triangles dont les aires sont égales... Ce qui ferait encore moins de tri à réaliser par l'utilisateur lui-même... (soit moi en l’occurrence...)


@+

#127 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 11-07-2014 14:02:34

0^0

Re,

Oui en effet il semblerait que cela soit ça!

Donc d'accord pour l'aperçu! :)

(C'est en comparant les programmes que je risque de comprendre le mieux, donc plus j'en aurais sous le coude plus ça risque de faire 'tilt'...)


@+

#128 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 11-07-2014 13:32:31

0^0

Bonjour,

S'il y a encore de nombreuses choses qui m'échappent, ce ne peut être qu'en dépit de toutes vos très bonnes explications. Donc même si je les accueille toujours avec beaucoup de reconnaissance, il faut voir que la programmation c'est un peu pour moi comme apprendre du chinois...

Par exemple, relativement au problème du classement des triangles à cotés entiers par aires croissantes (ou décroissantes, peu importe) et par périmètres successifs (voir le post #33), j'essaye sans résultat depuis des heures, de toutes les manières possibles imaginables (enfin.. sauf les bonnes visiblement), d'afficher les aires correspondantes à coté des 'cotes' des triangles classés...

Mon intention était de pouvoir facilement retrouver parmi les triangles de même périmètre, ceux qui on également une même aire.

Je n'ai pour le moment réussi qu'à exploiter le programme de totomm en le modifiant comme suit:


from math import sqrt

print ("Triangles à cotés entiers classés par périmètres + aires\n")
Pmin=int (input("Périmètre min = "))
if Pmin < 3:
    print ("le périmètre minimal doit être supérieur ou égal à 3")
    Pmin=int (input("Périmètre min = "))
Pmax=int (input("Périmètre max = "))
print ("\n")
for P in range(Pmin,Pmax+1):
    for AC in range (1,Pmax+1):
        BC = (P-AC)//2
        if BC<AC:
            break
        AB=P-AC-BC
        dP=(AB+BC+AC)/2
        s=sqrt(dP*(dP-AB)*(dP-BC)*(dP-AC))
        while 1:
            if AB>=AC+BC:
                break
            print ("Périmètre =",P,"---",AB,BC,AC,"---","Aire :",s)
            BC=BC-1
            AB=AB+1
            if BC<AC:
                break
    print ()

 

Les aires s'affichent bien, mais comme les triangles ne sont pas classés en fonction d'elles, il en résulte qu'il est très fastidieux de les comparer, dès que les triangles deviennent un peu nombreux...

Je piétine...


@+

#129 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 10-07-2014 16:32:36

0^0

Bravo pour avoir réussi à tenir compte de toutes les conditions que j'avais formulées ici et dans l'autre fil! :)

Avec ce dernier programme, le premier triangle équilatéral apparaît en  N° 1249:

N° 1249  :  112 112 112  ---   57  65  73
N° 1250  :  112 112 112  ---   57  73  65
N° 1251  :  112 112 112  ---   65  57  73
N° 1252  :  112 112 112  ---   65  73  57
N° 1253  :  112 112 112  ---   73  57  65
N° 1254  :  112 112 112  ---   73  65  57

Un grand merci à toi!


@+

#130 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 10-07-2014 12:46:12

0^0

Volontiers!

Et le programme aussi si tu veux bien?


Peut-être que c'est mieux par mail?
                                   

@+

#131 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 10-07-2014 12:38:19

0^0

Je vais donc essayer d'en prendre mon parti moi aussi! - C'est en effet une très sage attitude...

Quant aux doublons: en effet il y en a quelques uns, mais il ne sont pas si fréquents que ça à vrai dire... Ce n'est donc pas bien gênant, je m'en accommoderai très bien!    ;)

Merci!

:)

#132 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 10-07-2014 11:54:41

0^0

Re,

Magnifique!

   (J'aimerai déjà en être à savoir faire cela... sans gros bugs!!)


Comme tu le sais, le premier triangle équilatéral à apparaître devrait être celui de 112 de coté, soit pour un périmètre de 336.


@+

#133 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 10-07-2014 11:01:31

0^0

Bonjour,

Oui je vais méditer tout ça...

Et je suis à mon tour content que tu sois en sois content...

Autre chose? Euh... Oui! Je suis en train d'essayer de concocter un programme permettant de trouver dans l'ordre, cette fois c'est plus facile, tous les triangles qui pour un même périmètre (jusqu'à P_max_donné) ont également une même aire.

Bon, je ne suis encore pas très doué pour le moment, alors je ne sais pas ce que ça va donner...


@+

#134 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 10-07-2014 05:34:48

0^0

Bonjour,


Classement des triangles donné par le programme de totomm modifié par yoshi:


(26, 2, 12, 12)
(26, 3, 11, 12)
(26, 4, 10, 12)
(26, 5, 9, 12)
(26, 6, 8, 12)
(26, 4, 11, 11) ----- [tex]Aire_{(4,11,11)} = 6\sqrt13[/tex]          4,11,11   et   7,7,12    sont    interchangeables
(26, 7, 7, 12)   ----- [tex]Aire_{(7,7,12)} = 6\sqrt13[/tex]               
(26, 5, 10, 11)
(26, 6, 9, 11)
(26, 7, 8, 11)
(26, 6, 10, 10)
(26, 7, 9, 10)
(26, 8, 8, 10)
(26, 8, 9, 9)

27, 1, 13, 13)
(27, 2, 12, 13)
(27, 3, 11, 13)
(27, 4, 10, 13)
(27, 5, 9, 13)
(27, 6, 8, 13)
(27, 7, 7, 13)
(27, 3, 12, 12)
(27, 4, 11, 12)
(27, 5, 10, 12)
(27, 6, 9, 12)
(27, 5, 11, 11) ----- interpénétration des triangles de plus long coté = 11 dans les triangles de plus long coté = 12
(27, 7, 8, 12)   ----- interpénétration des triangles de plus long coté = 12 dans les triangles de plus long coté = 11
(27, 6, 10, 11)
(27, 7, 9, 11)
(27, 8, 8, 11)
(27, 7, 10, 10)
(27, 8, 9, 10)
(27, 9, 9, 9)


@+

#135 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 09-07-2014 22:19:21

0^0

Re,

Merci yoshi pour ta version de ce programme et toutes les explications qui vont avec! :)


Il tourne très bien et m'a permis de constater une chose fort intéressante que je n'avais pas prévue:

Mon algorithme 'manuel' ne répond parfaitement à mes attentes que jusqu'à un périmètre maximal égal à 26. Au delà rien ne va plus!!

En effet:

1) Pour un périmètre égal à 26 j'avais déjà noté que les triangles 7,12,12 et 4,11,11 ont la même aire. - (Il a-t-il d'autres cas semblables apparaissant plus tôt?) - L'ordre reste donc correct.

2)  C'est à partir d'un périmètre égal à 27 que l'ordre des triangles que donne mon algorithme ne correspond plus à celui des aires classées par ordre de grandeur.


Conclusion: Le programme de totomm ainsi amélioré par tes soins est donc le meilleur jusqu'à présent et répond parfaitement à mes attentes.


Encore merci pour vos apports!!


@+

#136 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 09-07-2014 17:32:04

0^0

Bonjour,

yoshi a écrit :

En somme tu as un problème de tri...

En effet lol.

yoshi a écrit :

J'ai ajouté diverses bricoles au prog de rotomm, pour que :
- l'affichage des périmètres reste par ordre croissant
- que pour un même périmètre, les triangles soient rangées par ordre d'aire croissante.
ne va donc pas te convenir

Non, cela ne me gêne pas... Du moment que pour un périmètre considéré les triangles apparaissent dans un ordre qui se justifie, cela me va parfaitement.

À cette fin, considérer les aires de chaque triangle me semble être un bon choix à ce niveau. Qu'on les range par ordre croissant ou décroissant importe peu...
- J'ai choisi de les faire apparaître par ordre décroissant de leurs aires, car de cette manière le triangle dont les cotés sont les moins inégaux occupe la première place. C'est un choix personnel de nature esthétique, mais pas seulement... Je m'explique: l'on peut très bien aussi présenter ce triangle comme étant en réalité celui qui est le moins 'étiré'.

J'en profite ici pour mieux définir cette notion:

[tex]E_{a,b,c}[/tex] est l' 'étirement' d'un triangle a,b,c tel que:  [tex]E_{a,b,c} = \frac{(Périmètre_{a,b,c})^2}{Aire_{a,b,c}}.\frac{\sqrt{3}}{6^2}[/tex]

yoshi a écrit :

puisque, pour p=23, tu veux terminer par 11,11,1 et que j'ai travaillé sur la base du programme de totomm alors que toi, tu sembles vouloir autre chose...
J'ai vérifié, toujours sur la base du programme de totomm, le classement à périmètre égal par ordre d'aires décroissantes et je n'ai pas le même classement que toi :
(16, 5, 5, 6)
(16, 4, 6, 6)
(16, 4, 5, 7)
(16, 3, 6, 7)
(16, 2, 7, 7)
Mais c'est juste une histoire d'ordre des côtés sur une ligne précise :

Oui, mais ceci non plus n'est pas bien grave...

;)


Pourrais-je voir le programme tel que modifié par tes soins?



Voici les ordres d'apparition des triangles en suivant mon algorithme (1° colonne) --- en inversant l'ordre d'énumération des triangles qu'il donne par périmètre considéré (2° colonne) --- (et en 3° colonne: les résultats du programme de totomm que tu as modifié):

P = 03: ---- 1,1,1 ---- 1,1,1 ---- (1,1,1)

P = 05: ---- 2,2,1 ---- 2,2,1 ---- (1,2,2)

P = 06: ---- 2,2,2 ---- 2,2,2 ---- (2,2,2)

P = 07: ---- 3,2,2 ---- 3,3,1 ---- (1,3,3)
P = 07: ---- 3,3,1 ---- 3,2,2 ---- (2,2,3)

P = 08: ---- 3,3,2 ---- 3,3,2 ---- (2,3,3)

P = 09: ---- 3,3,3 ---- 4,4,1 ---- (1,4,4)
P = 09: ---- 4,3,2 ---- 4,3,2 ---- (2,3,4)
P = 09: ---- 4,4,1 ---- 3,3,3 ---- (3,3,3)

P = 10: ---- 4,3,3 ---- 4,4,2 ---- (2,4,4)
P = 10: ---- 4,4,2 ---- 4,3,3 ---- (3,3,4)

P = 11: ---- 4,4,3 ---- 5,5,1 ---- (1,5,5)
P = 11: ---- 5,3,3 ---- 5,4,2 ---- (2,4,5)
P = 11: ---- 5,4,2 ---- 5,3,3 ---- (3,3,5)
P = 11: ---- 5,5,1 ---- 4,4,3 ---- (3,4,4)

P = 12: ---- 4,4,4 ---- 5,5,2 ---- (2,5,5)
P = 12: ---- 5,4,3 ---- 5,4,3 ---- (2,4,5)
P = 12: ---- 5,5,2 ---- 5,5,2 ---- (2,5,5)

P = 13: ---- 5,4,4 ---- 6,6,1 ---- (1,6,6)
P = 13: ---- 5,5,3 ---- 6,5,2 ---- (2,5,6)
P = 13: ---- 6,4,3 ---- 6,4,3 ---- (3,4,6)
P = 13: ---- 6,5,2 ---- 5,5,3 ---- (3,5,5)
P = 13: ---- 6,6,1 ---- 5,4,4 ---- (4,4,5)

P = 14: ---- 5,5,4 ---- 6,6,2 ---- (2,6,6)
P = 14: ---- 6,4,4 ---- 6,5,3 ---- (3,5,6)
P = 14: ---- 6,5,3 ---- 6,4,4 ---- (4,4,6)
P = 14: ---- 6,6,2 ---- 5,5,4 ---- (4,5,5)

P = 15: ---- 5,5,5 ---- 7,7,7 ---- (7,7,7)
P = 15: ---- 6,5,4 ---- 7,6,2 ---- (2,6,7)
P = 15: ---- 6,6,3 ---- 7,5,3 ---- (3,5,7)
P = 15: ---- 7,4,4 ---- 7,4,4 ---- (4,4,7)
P = 15: ---- 7,5,3 ---- 6,6,3 ---- (3,6,6)
P = 15: ---- 7,6,2 ---- 6,5,4 ---- (4,5,6)
P = 15: ---- 7,7,1 ---- 5,5,5 ---- (5,5,5)

P = 16: ---- 6,5,5 ---- 7,7,2 ---- (2,7,7)
P = 16: ---- 6,6,4 ---- 7,6,3 ---- (3,6,7)
P = 16: ---- 7,5,4 ---- 7,5,4 ---- (4,5,7)
P = 16: ---- 7,6,3 ---- 6,6,4 ---- (4,6,6)
P = 16: ---- 7,7,2 ---- 6,5,5 ---- (5,5,6)

P = 17: ---- 6,6,5 ---- 8,8,1 ---- (1,8,8)
P = 17: ---- 7,5,5 ---- 8,7,2 ---- (2,7,8)
P = 17: ---- 7,6,4 ---- 8,6,3 ---- (3,6,8)
P = 17: ---- 7,7,3 ---- 8,5,4 ---- (4,5,8)
P = 17: ---- 8,5,4 ---- 7,7,3 ---- (3,7,7)
P = 17: ---- 8,6,3 ---- 7,6,4 ---- (4,6,7)
P = 17: ---- 8,7,2 ---- 7,5,5 ---- (5,5,7)
P = 17: ---- 8,8,1 ---- 6,6,5 ---- (5,6,6)

P = 18: ---- 6,6,6 ---- 8,8,2 ---- (2,8,8)
P = 18: ---- 7,6,5 ---- 8,7,3 ---- (3,7,8)
P = 18: ---- 7,7,4 ---- 8,6,4 ---- (4,6,8)
P = 18: ---- 8,5,5 ---- 8,5,5 ---- (5,5,8)
P = 18: ---- 8,6,4 ---- 7,7,4 ---- (4,7,7)
P = 18: ---- 8,7,3 ---- 7,6,5 ---- (5,6,7)
P = 18: ---- 8,8,2 ---- 6,6,6 ---- (6,6,6)

P = 19: ---- 7,6,6 ---- 9,9,1 ---- (1,9,9)
P = 19: ---- 7,7,5 ---- 9,8,2 ---- (2,8,9)
P = 19: ---- 8,6,5 ---- 9,7,3 ---- (3,7,9)
P = 19: ---- 8,7,4 ---- 9,6,4 ---- (4,6,9)
P = 19: ---- 8,8,3 ---- 9,5,5 ---- (5,5,9)
P = 19: ---- 9,5,5 ---- 8,8,3 ---- (3,8,8)
P = 19: ---- 9,6,4 ---- 8,7,4 ---- (4,7,8)
P = 19: ---- 9,7,3 ---- 8,6,5 ---- (5,6,8)
P = 19: ---- 9,8,2 ---- 7,7,5 ---- (5,7,7)
P = 19: ---- 9,9,1 ---- 7,6,6 ---- (6,6,7)

P = 20: ---- 7,7,6 ---- 9,9,2 ---- (2,9,9)
P = 20: ---- 8,6,6 ---- 9,8,3 ---- (3,8,9)
P = 20: ---- 8,7,5 ---- 9,7,4 ---- (4,7,9)
P = 20: ---- 8,8,4 ---- 9,6,5 ---- (5,6,9)
P = 20: ---- 9,6,5 ---- 8,8,4 ---- (4,8,8)
P = 20: ---- 9,7,4 ---- 8,7,5 ---- (5,7,8)
P = 20: ---- 9,8,3 ---- 8,6,6 ---- (6,6,8)
P = 20: ---- 9,9,2 ---- 7,7,6 ---- (6,7,7)


  [...]



@+

#137 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 09-07-2014 11:37:49

0^0

Bonjour,

@ totomm,

Ci-dessous vous retrouverez les résultats que fournit votre programme.

----> Point faible: s'il fournit tous les triangles possibles, il ne les fournit pas dans le meilleur ordre possible, car en les classant comme je le propose (voir mes suggestions), les triangles apparaissent de cette manière par ordre croissant de leurs aires pour chaque périmètre considéré.

Par conséquent, bien que sujet à l'erreur de celui qui le met en oeuvre comme on a pu le constater, mon algorithme 'manuel' présente au moins un avantage certain: celui de produire les triangles recherchés dans un ordre respectueux également des aires selon les périmètres:


périmètre = 3 -- 1 1 1

périmètre = 5 -- 1 2 2

périmètre = 6 -- 2 2 2

périmètre = 7 -- 1 3 3
périmètre = 7 -- 2 2 3

périmètre = 8 -- 2 3 3

périmètre = 9 -- 1 4 4
périmètre = 9 -- 2 3 4
périmètre = 9 -- 3 3 3

périmètre = 10 -- 2 4 4
périmètre = 10 -- 3 3 4

périmètre = 11 -- 1 5 5
périmètre = 11 -- 2 4 5
périmètre = 11 -- 3 4 4 --- 3 3 5
périmètre = 11 -- 3 3 5 --- 3 4 4

périmètre = 12 -- 2 5 5
périmètre = 12 -- 3 4 5
périmètre = 12 -- 4 4 4

périmètre = 13 -- 1 6 6
périmètre = 13 -- 2 5 6
périmètre = 13 -- 3 5 5 --- 3 4 6
périmètre = 13 -- 3 4 6 --- 3 5 5
périmètre = 13 -- 4 4 5

périmètre = 14 -- 2 6 6
périmètre = 14 -- 3 5 6
périmètre = 14 -- 4 5 5 --- 4 4 6
périmètre = 14 -- 4 4 6 --- 4 5 5

périmètre = 15 -- 1 7 7
périmètre = 15 -- 2 6 7
périmètre = 15 -- 3 6 6 --- 3 5 7
périmètre = 15 -- 3 5 7 --- 4 4 7
périmètre = 15 -- 4 5 6 --- 3 6 6
périmètre = 15 -- 4 4 7 --- 4 5 6
périmètre = 15 -- 5 5 5


      [...]

_________________________________


Ordre d'apparition des triangles en suivant mon algorithme:

P = 03: ---- 1,1,1

P = 05: ---- 2,2,1

P = 06: ---- 2,2,2

P = 07: ---- 3,2,2
P = 07: ---- 3,3,1

P = 08: ---- 3,3,2

P = 09: ---- 3,3,3
P = 09: ---- 4,3,2
P = 09: ---- 4,4,1

P = 10: ---- 4,3,3
P = 10: ---- 4,4,2

P = 11: ---- 4,4,3
P = 11: ---- 5,3,3
P = 11: ---- 5,4,2
P = 11: ---- 5,5,1

P = 12: ---- 4,4,4
P = 12: ---- 5,4,3
P = 12: ---- 5,5,2

P = 13: ---- 5,4,4
P = 13: ---- 5,5,3
P = 13: ---- 6,4,3
P = 13: ---- 6,5,2
P = 13: ---- 6,6,1

P = 14: ---- 5,5,4
P = 14: ---- 6,4,4
P = 14: ---- 6,5,3
P = 14: ---- 6,6,2

P = 15: ---- 5,5,5
P = 15: ---- 6,5,4
P = 15: ---- 6,6,3
P = 15: ---- 7,4,4
P = 15: ---- 7,5,3
P = 15: ---- 7,6,2
P = 15: ---- 7,7,1

P = 16: ---- 6,5,5
P = 16: ---- 6,6,4
P = 16: ---- 7,5,4
P = 16: ---- 7,6,3
P = 16: ---- 7,7,2

P = 17: ---- 6,6,5
P = 17: ---- 7,5,5
P = 17: ---- 7,6,4
P = 17: ---- 7,7,3
P = 17: ---- 8,5,4
P = 17: ---- 8,6,3
P = 17: ---- 8,7,2
P = 17: ---- 8,8,1


      [...]


<<<< Observez qu'ici, les triangles apparaissent par ordre décroissant de leurs aires pour chaque périmètre considérés. Ce classement permet donc pour chaque périmètre, de démarrer le listing par le triangle dont les cotés sont les moins inégaux possibles (c'est un triangle équilatéral 1 fois sur 3), pour finir par le plus 'étiré' (ce sera dans tout les cas le triangle isocèle le plus allongé possible, excepté pour le triangle de périmètre 3, le seul possible.. qui est équilatéral...) >>>>

_________________________________


Pour rentrer un peu plus dans les détails:



Pour chaque périmètre:


1. Les premiers triangles sont faciles à déterminer:

1,1,1 - [2,1,1] - 2,2,1 - 2,2,2 - 3,2,2 - 3,3,2 - 3,3,3 - 4,3,3 - 4,4,3 - 4,4,4 - 5,4,4 - 5,5,4 - 5,5,5 - 6,5,5 - 6,6,5 - 6,6,6 - 7,6,6 - 7,7,6 - 7,7,7 - 8,7,7 - 8,8,7 - 8,8,8 - 9,8,8 - 9,9,8 - 9,9,9 -10,9,9 -10,10,9 - 10,10,10 - 11,10,10 -11,11,10 -11,11,11 -12,11,11 - ...

-----> Pour un périmètre P, trois cas se présentent:

1) Si P%3 = 0: le premier triangle sera: P/3, P/3, P/3
2) Si P%3 = 1: le premier triangle sera: P//3+1, P//3, P//3
3) Si P%3 = 2: le premier triangle sera: P//3+1, P//3+1, P//3


2. De même pour ce qui est des derniers triangles:

1,1,1 - [1,1,2] - 2,2,1 - 2,2,2 - 3,3,1 - 3,3,2 - 4,4,1 - 4,4,2 - 5,5,1 -5,5,2 - 6,6,1 - 6,6,2 - 7,7,1 - 7,7,2 - 8,8,1 - 8,8,2 - 9,9,1 - 9,9,2 - 10,10,1 -10,10,2 - 11,11,1 - 11,11,2 - 12,12,1 - 12,12,2 - 13,13,1 -13,13,2 - 14,14,1 - 14,14,2 - 15,15,1 - 15,15,2 - ...

-----> Pour un périmètre P, deux cas se présentent:

1) Si P%2 = 0: le dernier triangle sera: P/2-1, P/2-1, 2
2) Si P%2 = 1: le dernier triangle sera: P//2, P//2, 1


3. La progression des triangles suivants obéit toujours aux mêmes règles, et cela jusqu'au dernier triangle tel que défini plus haut, pour éviter le cas du triangle plat:

Règle 0: on part du premier triangle.. ou du triangle obtenu..

Règle 1: on respectera: nombre_1 >= nombre_2 >= nombre 3

Règle 2: on appliquera autant que possible la formule:

         nombre_2 du triangle suivant = nombre_2 triangle considéré + 1,

              et

         nombre_3 du triangle suivant = nombre_3 triangle considéré - 1,

   (Ce qui laisse le nombre_1 inchangé)

Règle 3: s'il n'est pas ou plus possible d'appliquer la règle 2, on passe à la ligne suivante et on applique la formule:
               
         nombre_1 du triangle suivant = nombre_1 du triangle considéré + 1,

         nombre2 = (P - nombre_1 obtenu)//2 + reste*,                             *note: le reste soit: P%2

              et

         nombre_3 =  (P - nombre_1 obtenu)//2

   On fait cela jusqu'à obtenir le dernier triangle tel que défini en '2.' pour ce périmètre


Exemple:

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Premier triangle pour P = 23:

         (P = 23, P//3 = 7, P%23 = 2)
----> P = 23: ----  8, 8, 7 --- On part de ce triangle (Règle 0) pour déterminer ensuite les triangles suivants possibles pour ce périmètre en respectant les règles énoncées.
     ---- Ici on ne peut peut aller au-delà de 8 pour le nombre_2,
            ---- On applique donc la Règle 2: on passe à la ligne suivante en appliquant la formule:
               
                            nombre_1 du triangle suivant = nombre_1 du triangle précédant + 1

                               etc...


P = 23: ----  8, 8, 7 --- le premier triangle --- (soit celui duquel l'on part)

P = 23: ----  9, 7, 7 --- nombre1, (P - nombre_1)//2 + reste, (P - nombre_1)//2
P = 23: ----  9, 8, 6     --- on détermine les triangle possibles suivants en respectant les règles énoncées.
P = 23: ----  9, 9, 5

P = 23: ---- 10, 7, 6 --- nombre1, (P - nombre_1)//2 + reste, (P - nombre_1)//2
P = 23: ---- 10, 8, 5     ---
P = 23: ---- 10, 9, 4
P = 23: ---- 10,10,3

P = 23: ---- 11, 6, 6 --- nombre1, (P - nombre_1)//2 + reste, (P - nombre_1)//2
P = 23: ---- 11, 7, 5     ---
P = 23: ---- 11, 8, 4
P = 23: ---- 11, 9, 3
P = 23: ---- 11,10,2
P = 23: ---- 11,11,1 --- soit le dernier triangle tel que défini en '2.' --- (Celui auquel l'on s'arrête)


-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------



@ +

#138 Re : Entraide (collège-lycée) » logique » 08-07-2014 16:42:40

0^0

Bonjour,

C'est le deuxième point qui est le moins évident je trouve...


@+

#139 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 07-07-2014 23:52:46

0^0

Bonsoir,

En effet! J'ai zappé tous ces triangles!!

votre algorithme à l'air de très bien fonctionner! :-)

Je vais essayer de voir comment il s'articule! Merci.


Bonnes vacances!


@+

#140 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 07-07-2014 22:18:09

0^0

Mis en couleurs, voilà ce que ça donne:


P = 03: ---- 1,1,1
P = 05: ---- 2,2,1
P = 06: ---- 2,2,2
P = 07: ---- 3,2,2 - 3,3,1
P = 08: ---- 3,3,2
P = 09: ---- 3,3,3 - 4,3,2 - 4,4,1
P = 10: ---- 4,3,3 - 4,4,2
P = 11: ---- 4,4,3 - 5,3,3 - 5,4,2 - 5,5,1
P = 12: ---- 4,4,4 - 5,4,3 - 5,5,2
P = 13: ---- 5,4,4 - 5,5,3 - 6,4,3 - 6,5,2 - 6,6,1
P = 14: ---- 5,5,4 - 6,4,4 - 6,5,3 - 6,6,2
P = 15: ---- 5,5,5 - 6,5,4 - 6,6,3 - 7,4,4 - 7,5,3 - 7,6,2 - 7,7,1
P = 16: ---- 6,5,5 - 6,6,4 - 7,5,4 - 7,6,3 - 7,7,2
P = 17: ---- 6,6,5 - 7,5,5 - 7,6,4 - 7,7,3 - 8,5,4 - 8,6,3 - 8,7,2 - 8,8,1
P = 18: ---- 6,6,6 - 7,6,5 - 7,7,4 - 8,5,5 - 8,6,4 - 8,7,3 - 8,8,2
P = 19: ---- 7,6,6 - 7,7,5 - 8,6,5 - 8,7,4 - 8,8,3 - 9,5,5 - 9,6,4 - 9,7,3 - 9,8,2 - 9,9,1
P = 20: ---- 7,7,6 - 8,6,6 - 8,7,5 - 8,8,4 - 9,6,5 - 9,7,4 - 9,8,3 - 9,9,2
P = 21: ---- 7,7,7 - 8,7,6 - 8,8,5 - 9,6,6 - 9,7,5 - 9,8,4 - 9,9,3 - 10,6,5 - 10,7,4 -10,8,3 - 10,9,2 - 10,10,1
P = 22: ---- 8,7,7 - 8,8,6 - 9,7,6 - 9,8,5 - 9,9,4 - 10,6,6 - 10,7,5 - 10,8,4 - 10,9,3 - 10,10,2
P = 23: ---- 8,8,7 - 9,7,7 - 9,8,6 - 9,9,5 - 10,7,6 - 10,8,5 - 10,9,4 - 10,10,3 - 11,6,6 - 11,7,5 - 11,8,4 - 11,9,3 - 11,10,2 - 11,11,1


etc...


[Corrections faites: pour les périmètres 22, il manquait 8,8,6 et pour les périmètres 19, il manquait 9,8,2  9,7,3  9,6,4 et 9,5,5. Merci totomm! ---- C'était un bug au recopiage, je les avais bien trouvés sur le papier.]


On reconnaîtra les triangles équilatéraux, les triangles isocèles, les triangles dont les dimensions sont des entiers consécutifs ou différent d'un même entier et le fameux triangle égyptien de dimension '3,4,5' le seul qui soit rectangle dans cette liste.


@+

#141 Re : Entraide (collège-lycée) » logique » 07-07-2014 20:55:51

0^0

Il faut aussi bien comprendre et retenir que dans tous les cas:

..........................................................................................................................................................................................

- Si P est fausse alors P ⇒ Q est toujours vraie quelle que soit la proposition Q.

- Si Q est vraie alors P ⇒ Q est toujours vraie quelle que soit la proposition P.

..........................................................................................................................................................................................


@+

#142 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 07-07-2014 19:16:27

0^0

Re,

Petite précision:

Notez que les triangles du post précédent sont classés par ordre décroissant de leurs aires.

Pour chaque périmètre considéré, un triangle donné présentera en effet une apparence d'autant plus 'étirée' qu'il sera rangé vers la droite.


@+

#143 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 07-07-2014 18:34:31

0^0

Bonjour,


En effet totomm, j'avais mal compris...


- Je ne regrette cependant pas d'avoir fait ce petit travail en post #23, car il a au moins le mérite de mettre en évidence 2 ou 3 propriétés que je trouve assez intéressantes... Les avez-vous tu remarquées? -



Voici donc les 20 premiers triangles demandés + 88:


P = 03: ---- 1,1,1
P = 05: ---- 2,2,1
P = 06: ---- 2,2,2
P = 07: ---- 3,2,2 - 3,3,1
P = 08: ---- 3,3,2
P = 09: ---- 3,3,3 - 4,3,2 - 4,4,1
P = 10: ---- 4,3,3 - 4,4,2
P = 11: ---- 4,4,3 - 5,3,3 - 5,4,2 - 5,5,1
P = 12: ---- 4,4,4 - 5,4,3 - 5,5,2
P = 13: ---- 5,4,4 - 5,5,3 - 6,4,3 - 6,5,2 - 6,6,1
P = 14: ---- 5,5,4 - 6,4,4 - 6,5,3 - 6,6,2
P = 15: ---- 5,5,5 - 6,5,4 - 6,6,3 - 7,4,4 - 7,5,3 - 7,6,2 - 7,7,1
P = 16: ---- 6,5,5 - 6,6,4 - 7,5,4 - 7,6,3 - 7,7,2
P = 17: ---- 6,6,5 - 7,5,5 - 7,6,4 - 7,7,3 - 8,5,4 - 8,6,3 - 8,7,2 - 8,8,1
P = 18: ---- 6,6,6 - 7,6,5 - 7,7,4 - 8,5,5 - 8,6,4 - 8,7,3 - 8,8,2
P = 19: ---- 7,6,6 - 7,7,5 - 8,6,5 - 8,7,4 - 8,8,3 - 9,5,5 - 9,6,4 - 9,7,3 - 9,8,2 - 9,9,1
P = 20: ---- 7,7,6 - 8,6,6 - 8,7,5 - 8,8,4 - 9,6,5 - 9,7,4 - 9,8,3 - 9,9,2
P = 21: ---- 7,7,7 - 8,7,6 - 8,8,5 - 9,6,6 - 9,7,5 - 9,8,4 - 9,9,3 - 10,6,5 - 10,7,4 -10,8,3 - 10,9,2 - 10,10,1
P = 22: ---- 8,7,7 - 8,8,6 - 9,7,6 - 9,8,5 - 9,9,4 - 10,6,6 - 10,7,5 - 10,8,4 - 10,9,3 - 10,10,2
P = 23: ---- 8,8,7 - 9,7,7 - 9,8,6 - 9,9,5 - 10,7,6 - 10,8,5 - 10,9,4 - 10,10,3 - 11,6,6 - 11,7,5 - 11,8,4 - 11,9,3 - 11,10,2 - 11,11,1


etc...


Note: Je n'ai pas pris en compte les triangles plats.


[Corrections faites: pour les périmètres 22, il manquait 8,8,6 et pour les périmètres 19, il manquait 9,8,2  9,7,3  9,6,4 et 9,5,5. Merci totomm! ---- C'était un bug au recopiage, je les avais bien trouvés sur le papier.]



@+

#144 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 06-07-2014 23:52:26

0^0

Bonsoir,


@ Yoshi,

Merci pour les encouragements et le lien. Je suis tombé par moi-même sur ce livre qui a l'air excellent, je vais m'y mettre.

C'est vraiment bien que des livres de cette qualité soient en accès libre.


@ totomm,

En m'aidant de vos (désolé pour la politesse, je m'aperçois que je vous tutoyais) résultats, voici les 20 premiers que je trouve, vérifications faites à la calculette:

N° 01  :  08 19 22  -  06 17 04 --- 49 --- 27
N° 02  :  18 20 26  -  15 13 09 --- 64 --- 37 --- 179,5995..
N° 03  :  20 21 23  -  14 13 10 --- 64 --- 37 --- 194,9769..
N° 04  :  13 30 32  -  06 28 08 --- 75 --- 42
N° 05  :  23 27 28  -  18 20 08 --- 78 --- 46 --- 286,9982..
N° 06  :  24 26 28  -  17 21 08 --- 78 --- 46 --- 289,2317..
N° 07  :  20 31 39  -  19 22 11 --- 80 --- 52
N° 08  :  26 30 32  -  19 15 18 --- 88 --- 52
N° 09  :  24 27 39  -  15 26 11 --- 90 --- 52 --- 319,4683..
N° 10  :  24 31 35  -  19 26 07 --- 90 --- 52 --- 363,7306..
N° 11  :  14 38 39  -  08 34 08 --- 91 --- 50
N° 12  :  16 38 44  -  12 34 08 --- 98 --- 54 --- 298,2197..
N° 13  :  16 39 43  -  13 34 07 --- 98 --- 54 --- 311,4803..
N° 14  :  17 38 43  -  12 35 07 --- 98 --- 54 --- 321,6955..
N° 15  :  22 37 39  -  13 28 15 --- 98 --- 56 --- 398,4469..
N° 16  :  25 29 44  -  25 21 10 --- 98 --- 56 --- 342,9285..
N° 17  :  25 36 37  -  14 27 15 --- 98 --- 56 --- 428,3176..
N° 18  :  30 31 37  -  26 13 20 --- 98 --- 59 --- 448,4372..
N° 19  :  23 36 41  -  10 33 15 ---100 --- 58 --- 412,4318..
N° 20  :  28 32 40  -  28 13 21 ---100 --- 62 --- 444,9719..

Les trois dernières colonnes sont respectivement les sommes des longueurs extérieures, les sommes des longueurs intérieures et les aires des triangles ABC de mêmes périmètres.

L'ordre exact est discutable... Au moins deux aires (mises en rouge) pourraient être considérées en vue d'un autre classement...


@+

#145 Re : Entraide (collège-lycée) » logique » 06-07-2014 23:47:34

0^0

Bonjour,

Non justement, bien au contraire! De quelque chose de faux, l'on peut absolument tout en conclure sans commettre de faute logique.


Si je dis par exemple: - "la Terre a la forme d'une cloche, donc je suis le roi de Suède" -, personne ne devrait douter de ma bonne santé mentale.



@+

#146 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 05-07-2014 17:06:44

0^0

Bonjour,

totomm a écrit :

Bien des choses ne sont pas si compliquées, donc faisables. Et chacun peut en faire une partie.

Que j'aimerais que certaines choses "pas si compliquées" aux dires des uns, me soient plus familières... Ainsi, je pourrais tenter de participer comme je le souhaiterais, même si ce n'est que pour une petite part...

Or je suis tout juste en train de découvrir les bases 'Python': je précise que je ne connaissais encore rien de rien à la programmation il n'y a que quelques jours de cela...

totomm a écrit :

"Si vous voulez "la liste complète de tous les triangles entiers ABC possibles…",
il faut peut-être définir un classement de tous ces triangles : Je vous suggère un classement par périmètres croissants.
Définissez donc comment cela pourrait être et donnez les 20 premiers de votre classement.

Je planche sur la question depuis un certain temps sans guère avancer...

Au départ je recherchais une formule permettant d'attribuer à tout triangle une seule valeur qui dépendrait à la fois de son aire et de son périmètre, valeur permettant un classement et qui serait en théorie la même pour tous les triangles ayant une même aire et un même périmètre.

Cela dit, j'en arrive aussi à me dire que considérer seulement le Périmètre est sans doute plus adéquat (???) ou en tout cas au moins plus pratique, à défaut de mieux...
Je dis cela dans le sens que pour un périmètre donné, il existe une aire minimale égale à 0 (soit celle du triangle plat correspondant) et une aire maximale égale à celle du triangle équilatéral ayant ce périmètre, soit:  [tex]S_{max} = \left(\frac{Périmètre}{3}\right)^2.\frac{\sqrt{3}}{4}[/tex], alors que ce n'est pas le cas si l'on considère seulement les aires...
> En effet, pour chaque aire donnée, il y a bien un périmètre minimal correspondant: encore celui d'un triangle équilatéral, mais pas de périmètre maximal défini, car ce dernier peut être infini... Ce serait bien gênant pour un triangle à qui l'on attribuerait une valeur qui ne l'est pas*!

*note: autrement dit: infinie...


Mis à part cela, et à part si j'ai raté quelque chose, je ne vois pas en quoi un tel classement serait finalement nécessaire pour obtenir l'ensemble des triangles adéquats possibles - en y incluant ceux possédants des dimensions égales - pour un "Max" choisi, arbitraire certes....


@+

#147 Re : Programmation » Triangles ayant un point intérieur à distance entière des sommets » 04-07-2014 20:41:05

0^0

Bonjour

Serait-il très compliqué de modifier le programme de façon à ce qu'il donne aussi les cas où certaines d'entre les valeurs AB, BC, AC, AM, BM et CM sont égales?

Il permettrait ainsi de fournir la liste complète de tous les triangles entiers ABC possibles "ayant un point M intérieur à distances entières des sommets" pour un "Max" donné, ce qui serait vraiment parfait.


@+

#149 Re : Enigmes, casse-têtes, curiosités et autres bizarreries » Partitions de triangles entiers en triangles entiers. » 02-07-2014 16:03:06

0^0

Bonjour,

Bonnes observations!

Je note que les deux triangles 'ABC' qui possèdent 3 solutions pour M apparaissent en des positions très rapprochées dans l'énumération.


@+

Pied de page des forums