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

#1 06-02-2012 12:40:16

Laevras
Membre
Inscription : 06-02-2012
Messages : 3

Calculer le nb de combinaisons?

Bonjour,

Je bosse actuellement sur un projet, et je paye cher le fait d'avoir jamais rien foutu en maths.

Je suis totalement perdu dans ce que je cherche à faire, et je n'ai aucune idée de la façon dont je peux m'y prendre...

Pour poser le problème:

Je me retrouve avec une longueur variable.
Plusieurs éléments de longueur variable (ce nombre d'éléments peut varier)

Et je dois trouver le nombre de combinaisons possibles pour tout ça!
Sachant que j'ai une tolérance à respecter.

Par exemple (les longueurs sont en millimètres):

Une longueur de 3552, la tolérance est de 20.
J'ai 5 éléments: 1150, 950, 450, 250, 100.

Je dois connaitre le nombre de combinaisons possibles pour ça
Le premier cas le plus évident, en tentant de placer les éléments les plus longs possibles donnera donc :
3 éléments de 1150
1 élément de 100
reste 2

Mais je souhaite aussi connaitre les autres combinaisons. Même le cas où on se retrouve avec 35 éléments de 100 et un reste de 52.
Voilà, si quelqu'un qui s'y connait un peu aurait une piste, ou même pouvait m'expliquer en termes simples comment m'y prendre, ce serait vraiment gentil!
Merci d'avance!
(Mon niveau en maths s'arrête au collège)

Hors ligne

#2 06-02-2012 13:44:42

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 17 401

Re : Calculer le nb de combinaisons?

Bonjour,

Bienvenue à bord...
On doit pouvoir t'aider, mais d'abord plusieurs questions :.
Tu dis :

3 éléments de 1150
1 élément de 100
reste 2

Et là :

Même le cas où on se retrouve avec 35 éléments de 100 et un reste de 52.

1ere question : pourquoi 100 et pas 102 ?
D'autre part :

Une longueur de 3552, la tolérance est de 20.
J'ai 5 éléments: 1150, 950, 450, 250, 100.

2e question : tolérance de quoi ? sur quoi ?
3e question :quelle est cette longueur maximale ? 3552 mm ? dans tous les cas ?
4e question : longueur minimale d'un morceau ? Nombre minimal de morceaux ?

Après ça, en principe (si c'est clair), un p'tit de coup de programmation et le programme va cracher beaucoup plus vite que nous à la main les résultats...

@+

Hors ligne

#3 06-02-2012 14:08:16

Laevras
Membre
Inscription : 06-02-2012
Messages : 3

Re : Calculer le nb de combinaisons?

Hé bien comme je l'ai dis, la longueur est variable.

J'ai simplement donné un exemple avec des longueurs que je peux rencontrer.

J'aurais pas du parler de tolérance, le but étant de se rapprocher le plus possible de 0, j'ai simplement droit à une tolérance en fonction de la longueur initiale.

Donc,
On a cette longueur maximale.
Et un certain nombre variable d'éléments de longueurs qui peuvent elles aussi varier.

Le but étant de trouver toutes les combinaisons d'éléments possibles pour se rapprocher de 0.

Pour reprendre mon exemple, j'ai une longueur de 3552.

Et je dois trouver toutes les combinaisons possibles avec 5 éléments dont les tailles sont respectivement de 1150, 950, 540, 250 et 100.

Donc, dans ces combinaisons on retrouvera le cas où il y a 3 éléments de 1150, et 1 élément de 100, ce qui donne 3550, et il reste donc 2.
Mais on aura aussi le cas où il n'y a que des éléments de 100 (35x100), 3500, et il reste 52.


Donc pour répondre à tes questions:
1)  100 car c'est la longueur de l'élément (je comprends pas pourquoi 102)
2)  Comme dit, mieux vaut oublier cette histoire de tolérance, c'est quelque chose que je peux gérer plus tard de façon très simple.
3)  La longueur est variable, ça fait partie des paramètres qui seront définis par quelqu'un.
4)  La longueur d'un morceau est fixe, mais elle dépendra de tout un tas de paramètres, mais au moment du calcul, chaque élément à une taille réelle que je dois exploiter, elle ne variera pas.

C'est un programme en Java, je pourrai bien sûr faire des boucles et tester toutes les combinaisons possibles et imaginables, mais j'aimerai éviter qu'il me colle 15 éléments de 1150 dans une longueur de 2400 par exemple.
Je voudrai vraiment restreindre le nombre de boucles au nombre de solutions possibles, s'il est possible de trouver une formule pour les calculer directement.
J'avais déjà programmé un truc pour faire ça, mais c'était vraiment pas propre et carrément pas optimisé, et ça ne fonctionnait pas dans certains cas surtout!

Le but après avoir sortit toutes ces combinaisons étant de récupérer les reste, de garder seulement ceux sous le seuil de tolérance, puis de faire des calculs sur les prix des éléments pour trouver la solution la moins chère (évidement, les éléments les plus longs étant les moins chers, dans mon exemple ce sera mon premier cas qui sera retenu).

Voilà, j'espère avoir été assez clair!
Merci!

Hors ligne

#4 06-02-2012 14:31:24

nerosson
Membre actif
Inscription : 21-03-2009
Messages : 1 658

Re : Calculer le nb de combinaisons?

Salut à tous,

@Laevras,

C'est marrant :

Toi, tu es sans doute jeune et tu es en difficulté parce que tu n'as pas bossé fort.

Moi, j'ai bien bossé, mais je ne suis pas fameux parce que je suis trop vieux.

Tu es du niveau du collège et moi aussi, mais le mien c'etait celui du fin des années trente, début des années quarante.

Je doute que nous allions bien loin en unissant nos deux nullités, mais rassure-toi, il y a ici des kracks qui vont me suivre et peut-être me devancer.

Point de vue méthode rationnelle, je ne vois rien : je fais ce que tu as probablement fait : je tâtonne. Je note que tout ce que tu possèdes comme éléments pour ton jeu de construction, ce sont des multiples de cinquante. Donc je pense que tu auras toujours un écart égal ou supérieur à deux. Même si tu faisais appel à la division, tu ne pourrais avoir qu'un nombre terminé par cinq, ce qui ne serait pas mieux. J'en conclus que la cible à viser est 3550.


Le premier élément que j'ai trouvé, c'est celui que tu donnes : les grands esprits se rencontrent, mais les nullités aussi.

Je peux aussi te proposer : 950 + 950 + 950 + 450 + 250 = 3550
1150 + 1150 + 950  + 100 + 100 + 100 = 3550

Je suppose que je pourrais en trouver une kyrielle d' autres (toi aussi), surtout qu'on n'a pas encore utilisé le signe -, mais ça ne te dira pas combien il y a de combinaisons possibles.

Laissons la parole aux fortiches, qui pullulent comme les poux sur la tête d'un teigneux.

En attendant, je vais essayer de voir si on ne pourrait pas utiliser aussi les signes "X" et ":", ce qui serait plus original.

Peut-être A+.


P.S. Comme je m'y attendais, j'ai été devancé. Pas étonnant, je suis lent comme un cheval fourbu. D'autre part, en relisant ton texte, je me demande si je ne l'ai pas mal interprété et si le seul signe autorisé n'est pas uniquement le signe "+", comme quand on mesure la longueur de la cour avec une allumette.

Dernière modification par nerosson (06-02-2012 14:39:34)

Hors ligne

#5 06-02-2012 15:44:23

Laevras
Membre
Inscription : 06-02-2012
Messages : 3

Re : Calculer le nb de combinaisons?

Merci pour ton soutien Nerosson :)

Finalement j'ai pris le problème d'une autre manière, résolu en quelques lignes.
Ça va beaucoup mieux en ne touchant pas aux maths que je ne maîtrise absolument pas :)
Merci pour votre aide!

Je sais même pas s'il existait une formule pour le genre de chose que je demandais. (Du moins, une formule simple :p)

Hors ligne

Pied de page des forums