[Résolu] Constitution de trinômes
Modérateur : Vilains modOOs
Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
-
- PassiOOnné
- Messages : 653
- Inscription : 02 déc. 2009 09:43
[Résolu] Constitution de trinômes
Bonjour à tous,
Une petite énigme. J'ai besoin de constituer des trinômes Hommes/Femmes avec un nombre total d'Hommes et de Femmes fluctuant et des critères absolus de constitution qui me facilitent pas la tâche.
Ci joint un fichier exemple contenant quelques cas de figure, les critères absolus et mon voeu.
A votre bon cœur.
Merci et à bientôt.
Une petite énigme. J'ai besoin de constituer des trinômes Hommes/Femmes avec un nombre total d'Hommes et de Femmes fluctuant et des critères absolus de constitution qui me facilitent pas la tâche.
Ci joint un fichier exemple contenant quelques cas de figure, les critères absolus et mon voeu.
A votre bon cœur.
Merci et à bientôt.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par TheHache le 10 avr. 2018 06:21, modifié 3 fois.
LibO 7.4.4.2 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: Constitution de trinômes
Salut,
Une proposition à partir de la lige 40 (copie de ton tableau). Apparemment tu as une erreur dans le groupe M1:O18 ou en effet, il possible de faire un trinôme 2 hommes une femme supplémentaire.
Toutes les colonnes sont calculées y compris les colonnes trinômes (A,E,I etc). Je te laisse décortiquer (normalement c'est logique )
@+
Une proposition à partir de la lige 40 (copie de ton tableau). Apparemment tu as une erreur dans le groupe M1:O18 ou en effet, il possible de faire un trinôme 2 hommes une femme supplémentaire.
Toutes les colonnes sont calculées y compris les colonnes trinômes (A,E,I etc). Je te laisse décortiquer (normalement c'est logique )
@+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- PassiOOnné
- Messages : 653
- Inscription : 02 déc. 2009 09:43
Re: Constitution de trinômes
Salut OOotremer971,
Très beau boulot, je te remercie.
A bientôt
Oui c'est une erreur et ta proposition nous montre qu'elle sera évitée à l'avenir. (l'humain est encore faillible )OOotremer971 a écrit :Apparemment tu as une erreur dans le groupe M1:O18 ou en effet, il possible de faire un trinôme 2 hommes une femme supplémentaire.
Très beau boulot, je te remercie.
A bientôt
LibO 7.4.4.2 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
-
- PassiOOnné
- Messages : 653
- Inscription : 02 déc. 2009 09:43
Re:Constitution de trinômes
Salut OOotremer971,
Je ne comprends pas bien toute la formule de B45 :
Ce que je pense comprendre : Prendra la valeur de A45 si elle est supérieure à 0
Je ne comprends pas !
Prendra la valeur entière du minimum entre la somme de (B$40:B$41)/3 de B$40 et de B$41.
Si tu pouvais l'expliquer, ce serait parfait.
Merci, à bientôt.
Je ne comprends pas bien toute la formule de B45 :
Code : Tout sélectionner
=(A45>0)*((A45<=B$40-ENT(MIN(SOMME(B$40:B$41)/3;(B$40:B$41))))+1)
Code : Tout sélectionner
(A45>0)
Code : Tout sélectionner
A45<=B$40
Code : Tout sélectionner
ENT(MIN(SOMME(B$40:B$41)/3;(B$40:B$41))
Merci, à bientôt.
LibO 7.4.4.2 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
-
- ManitOOu
- Messages : 2744
- Inscription : 16 avr. 2010 13:31
Re: Constitution de trinômes
Bonjour TheHache
Comment, à partir de deux groupes, constitués pour l'un de garçons et pour l'autre de filles, créer un maximum de trinômes composés de 2 hommes et d'une femme puis d'un homme et deux femmes, jusqu'à épuisement d'un des deux groupes ?
On cherche d'abord à savoir combien de trinômes on peut constituer. Logiquement, il y aura autant de trinômes que la somme des individus divisée par 3
Problème 1 : le résultat de la division par 3 n'est pas forcement un nombre entier.
Problème 2 : les trinômes doivent impérativement être constitués d'au moins une femme ou au moins un homme. Il ne peut donc pas y avoir plus de trinôme que de personne dans un groupe. Pour résoudre les deux problèmes d'un coup :
celle là tu l'avais bien comprise
Avec ça, on obtient le nombre exact (et j'insiste sur exact) de trinôme qu'il est possible de constituer avec nos deux groupes.
Partant de là, le problème se simplifie. On sait qu'on peut faire x trinômes et pas un de plus. On sait aussi qu'il faut que les hommes soient le plus possible au nombre de 2 par trinôme. Mais comment savoir combien de fois seront-il au nombre de 2 ?
En partant du principe qu'il seront d'abord au nombre de 1 autant de fois qu'il y a de trinôme à créer. La différence entre le nombre d'hommes et le nombre de trinômes nous donne le nombre de fois qu'il y aura 2 hommes dans un trinôme (c'est la qu'il faut méditer).
A partir de cette vérité, il faut écrire une formule qui affiche 2 dans une colonne autant de fois que possible, puis 1 ensuite autant de fois que possible. Ça c'est pour la colonne des hommes. Celle des femmes, par déduction devra afficher l'inverse de celle des hommes sans se poser de question.
Maintenant passons aux formules :
Elles sont toutes constituées d'expressions qui retournent soit VRAI soit FAUX. Et pour rappel, VRAI +1 est égal à 2 (ça va bientôt nous arranger) et FAUX + 1 est égal à 1 (ça va aussi bientôt nous arranger pour remplir la colonne B).
L'expression :
retourne VRAI si A45 contient une valeur supérieure à zéro et FAUX dans le cas contraire. Ce que tu ne comprenais pas. On aurait aussi pu écrire :
l'expression :
retourne elle aussi VRAI ou FAUX. Souviens toi :
correspond au nombre de trinôme que l'on peux faire.
B40 moins le nombre de trinôme que l'on peut faire, nous donne le nombre de fois qu'il y aura 2 hommes.
A45 est inférieur ou égal au nombre de fois qu'il y aura 2 hommes. C'est une expression qui retourne VRAI ou FAUX en fonction du contenu de la colonne A et du nombre de fois qu'il y aura 2 hommes.
Donc
retourne 2
et
aussi, si A45 est supérieur à zéro et A45 inférieur ou égal au nombre de fois qu'il peut y avoir 2 hommes.
Dès qu'une de expressions devient fausse, les résultats changent :
et voilà comment se rempli la colonne B
Le principe est identique pour les colonnes A et C
J'ignore si c'est plus clair comme ça, mais n'hésite pas si tu as d'autres interrogations.
@+
Avant d'aborder l'aspect formules, je pense qu'il est nécessaire de commencer par l'explication du raisonnement adopté. Sa transcription en formule sera plus simple à comprendre.TheHache a écrit :Si tu pouvais l'expliquer, ce serait parfait.
Comment, à partir de deux groupes, constitués pour l'un de garçons et pour l'autre de filles, créer un maximum de trinômes composés de 2 hommes et d'une femme puis d'un homme et deux femmes, jusqu'à épuisement d'un des deux groupes ?
On cherche d'abord à savoir combien de trinômes on peut constituer. Logiquement, il y aura autant de trinômes que la somme des individus divisée par 3
Code : Tout sélectionner
=SOMME(B$40:B$41)/3
Problème 2 : les trinômes doivent impérativement être constitués d'au moins une femme ou au moins un homme. Il ne peut donc pas y avoir plus de trinôme que de personne dans un groupe. Pour résoudre les deux problèmes d'un coup :
Code : Tout sélectionner
=ENT(MIN(SOMME(B$40:B$41)/3;(B$40:B$41)))
Avec ça, on obtient le nombre exact (et j'insiste sur exact) de trinôme qu'il est possible de constituer avec nos deux groupes.
Partant de là, le problème se simplifie. On sait qu'on peut faire x trinômes et pas un de plus. On sait aussi qu'il faut que les hommes soient le plus possible au nombre de 2 par trinôme. Mais comment savoir combien de fois seront-il au nombre de 2 ?
En partant du principe qu'il seront d'abord au nombre de 1 autant de fois qu'il y a de trinôme à créer. La différence entre le nombre d'hommes et le nombre de trinômes nous donne le nombre de fois qu'il y aura 2 hommes dans un trinôme (c'est la qu'il faut méditer).
A partir de cette vérité, il faut écrire une formule qui affiche 2 dans une colonne autant de fois que possible, puis 1 ensuite autant de fois que possible. Ça c'est pour la colonne des hommes. Celle des femmes, par déduction devra afficher l'inverse de celle des hommes sans se poser de question.
Maintenant passons aux formules :
Elles sont toutes constituées d'expressions qui retournent soit VRAI soit FAUX. Et pour rappel, VRAI +1 est égal à 2 (ça va bientôt nous arranger) et FAUX + 1 est égal à 1 (ça va aussi bientôt nous arranger pour remplir la colonne B).
L'expression :
Code : Tout sélectionner
=(A45>0)
Code : Tout sélectionner
=SI(A45>0;1;0)
Code : Tout sélectionner
A45<=B$40-ENT(MIN(SOMME(B$40:B$41)/3;(B$40:B$41)))
Code : Tout sélectionner
ENT(MIN(SOMME(B$40:B$41)/3;(B$40:B$41)))
B40 moins le nombre de trinôme que l'on peut faire, nous donne le nombre de fois qu'il y aura 2 hommes.
A45 est inférieur ou égal au nombre de fois qu'il y aura 2 hommes. C'est une expression qui retourne VRAI ou FAUX en fonction du contenu de la colonne A et du nombre de fois qu'il y aura 2 hommes.
Donc
Code : Tout sélectionner
(VRAI)*((VRAI)+1)
et
Code : Tout sélectionner
(A45>0)*((A45<=B$40-ENT(MIN(SOMME(B$40:B$41)/3;(B$40:B$41))))+1)
Dès qu'une de expressions devient fausse, les résultats changent :
Code : Tout sélectionner
FAUX multiplié par (VRAI + 1) est égal à zéro
Code : Tout sélectionner
VRAI multiplié par (FAUX+1) est égal à 1
Code : Tout sélectionner
VRAI multiplié par (VRAI+1) est égal à 2
Le principe est identique pour les colonnes A et C
J'ignore si c'est plus clair comme ça, mais n'hésite pas si tu as d'autres interrogations.
@+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
AOO
LibreOffice
Debian 10 et 11
-
- PassiOOnné
- Messages : 653
- Inscription : 02 déc. 2009 09:43
Re: Constitution de trinômes
Bonjour OOotremer971,
Bah.... quoi dire.... splendide, magnifique, exceptionnel.
Je te remercie pour ces explications claires et pertinentes qui, je ne doute pas un instant, serviront à beaucoup d'autres visiteurs du forum.
Encore un grand merci pour tout ce temps passé à la rédaction des explications et surtout à la recherche de la réponse.
A bientôt.
Bah.... quoi dire.... splendide, magnifique, exceptionnel.
Je te remercie pour ces explications claires et pertinentes qui, je ne doute pas un instant, serviront à beaucoup d'autres visiteurs du forum.
Encore un grand merci pour tout ce temps passé à la rédaction des explications et surtout à la recherche de la réponse.
A bientôt.
LibO 7.4.4.2 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro
AOO 4.1.13 - Windows 10 Pro