Géométriquement le forum Dlz9
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

Aller en bas
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 10:20
avec la formule de Ben314
n=32 paires p = 0.3643
n=33 paires p= 0.3651
donc si on joue avec précision de deux chiffres apres virgules, la constante 0.37 arrive pour n= 33 paires

Pour n= 100 paires p= 0.367

bref, inutile de faire des simulations à n élevé
il vaut mieux faire plus de simulations sur un n moyen petit
euh, et la simulation de l'énoncé de l'exo serait vraiment l'idéale!!
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 13:00
Bonjour Beagle,
Ce que je fais de théorique n'est pas très compliqué. Je considère N paires de chaussettes. On peut prendre soit N aléatoire de 1 à 1000 ou N fixé.
parmi de 2N chaussettes, je les prend successivement une par une, et si elle appartient à la même paire que la précédente, le compte +1 "côte à côte".
Je fais 100 fois cette opération. J'obtiens donc le nombre de zéros pour 100.
J'ai pris ta liste et j'ai attribué les lettres A, B, C, D selon le schéma indiqué.
Manifestement tu cherches à défendre Ben et Diraki, c'est très sympa de ta part, mais il me semble qu'ils sont assez grands pour se défendre tous seuls et ce n'est certainement pas avec 10 tirages avec quatre paires que tu peux convaincre qui que ce soit.
D'autant qu'avec ton tirages, suivant l'attribution des lettres ont peut obtenir des choses très différentes, mais le nombre de zéros sera très probablement toujours entre 2 et 4 sur 10.

Code:
1 ; 2 ==> A
3 ; 4 ==> B
5 ; 6 ==> C
7 ; 8 ==> D
B A C C D B A D  1
D A C C B A D B  1
A C B D D C B A  1
A D B B A D C C  1
A D A C D B C B  0
D B A C C D B A  1
C D D B A C B A  1
A C C D A B D B  1
B A D D A C B C  1
B C A B C D A D  0

1 ; 8 ==> A
2 ; 7 ==> B
3 ; 6 ==> C
4 ; 5 ==> D
D B D C B C A A  1
A B C D C A B D  0
A C C B A D D B  2
B A D C A B D C  0
A B B D A D C C  1
A D B C D B C A  0
C B A D A D C B  0
A C D B B D A C  1
D B A B A D C C  1
D C B C D A A B  1

Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 13:22
J'ai fait la simulation pour 32 paires et 100 paires, j'obtiens 0.13 et 0.11.
Je donnerai mon code à qui le demande.
bref, inutile de faire des simulations à n élevé
il vaut mieux faire plus de simulations sur un n moyen petit
euh, et la simulation de l'énoncé de l'exo serait vraiment l'idéale!!
Ca, je ne comprends pas, la seule précision sur N c'est "un nombre N tendant vers l'infini ", d'où ma première réaction, rapport d'un infini dénombrable sur un infini, ça tend vers 0. Je maintiens cela en prenant strictement l'énoncé. Par contre pour les N pas trop grands, ça tourne autour de 10 en tendant vers 0 pour N tendant vers l'infini.
Aurais-tu d'autres informations ?
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 13:33
Je relis ta façon de faire au calme

mais tu devrais éviter les phrases comme tu défends Ben314 et Doraki,
ce sont deux bons mathématiciens,
un calcul mathématique est un calcul mathématique
avec ces deux pointures en faisant deux méthodes différentes ils trouvent la meme chose.
Stop sur les maths, c'est du théorique démontré, point barre.
Et c'est à la pratique de rendre compte que effectivement cela marche comme cela.

Si la pratique par simulation informatique trouve un autre résultat, c'est que le programme fait autre chose que le théorique point barre.

bref tu fais un autre exo semble-t-il,
je relis pour voir quel exo tu fais si je comprends

PS: avec mes données je suis content que cela oscille entre 2 et 4 puisque le théorique est 0.34
donc mon processus aléatoire est bien celui de l'exo de Ben314
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 13:55
explique sur plus petit
on reprend mon exemple
on va faire sur 8 chaussettes =4 paires
1,1
2,2
3,3
4,4
Perso je prenais un random = une permutation de (1,1,2,2,3,3,4,4)
et on regarde dans cette permutation

Toi tu pioches dans le sac un par 1
par exemple tu sors 3 puis tu sors 4 puis tu sors 4 bingo cas défavorable , compteur défavorable =+1

tu sors dans l'ordre 4,3,1,2,3,4,1,2, bingo c'est un cas favorable, compteur de cas favorable =+1

c'est cela?
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 14:29
Bon, j'ai perdu ma réponse, tant pis.
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Lun 25 Juil - 23:45
Bonsoir,
Gbzm est intervenu et il a fait une simulation de 1000 lessives avec 100 paires de chaussettes.
Il y a 20 simulations.
Apparemment, les 20 simulations conforment la probabilité de 37% de na pas trouver de paire côte à côte.
Je ne connais pas Python, donc, je ne sais pas ce que font les fonctions copy, remove etc.
"chaussette" est une variable non déclarée, puis elle est utilisée comme un tableau.
Evidemment la logique de calcul est la même que la mienne, mais, comme certains termes de syntaxe me sont inconnus, je ne peux pas comprendre.
Très nettement, c'est un problème ouvert et ça m'intéresse vraiment de savoir où je me suis trompé.
Il y a pas mal d'essai dans mon code, alors pour l'instant il est peu lisible.
Ce serait intéressant de faire une simulation de 10 lessives de 6 paires, en mettant des impressions intermédiaires.

Pour avoir un truc de ce genre :
Code:
Simulation de paires de chaussettes
FFBBDDCCAAEE  6 6
CFCEFADDABBE  6 2
DFEEDFBACACB  6 1
FFAACCBDDEEB  6 5
FFCDBCDBEAEA  6 1
BDAABDFFECEC  6 2
EADBECFCBAFD  6 0
AADDFEEFCCBB  6 5
BADEBADFEFCC  6 1
CABEDDBEAFCF  6 1
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 10:44
FEEBCDEFFBDA
DFFDFAEDFFCD
BBAAADFCEFBF
DCEFDECCDBAD
CBDADAFAFDAD
CBACBAADFBBB
FFECFCCFFBBA
EAAFADCEEFFD
DEFBACACACCA
CBECEDCECABE
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 11:25
C'est bizarre, il y a quelque fois 3 chaussettes pareilles.
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 11:36
Pour mémoire, considérant le troublion actif sur M.F.
Gbzm a écrit :
Code:
J'ai fait aussi une petite simulation en python, en comptant, parmi 1000 étendages d'une lessive de 100 paires de chaussettes, combien il y en a sans paire côte à côte.

Code: Tout sélectionner
    import random as rd

    n=100
    Lessive=[(i,j) for i in range(n) for j in range(2)]

    def Etendage() :
        favorable=1
        derniere = -1
        Aetendre=Lessive.copy()
        while len(Aetendre)>0 :
            chaussette=rd.choice(Aetendre)
            if chaussette[0]!=derniere :
                derniere=chaussette[0]
                Aetendre.remove(chaussette)
            else :
                favorable=0
                break
        return favorable

    for j in range(20) :
        favorable=0
        for i in range(1000) :
            favorable+=Etendage()
        print(favorable)

371
358
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 11:40
j'ai trouvé ce site un peu rapidos, ils ne font pas un random sequence?

bon il ya beaucoup de sites qui te donneront un random sequence:
le plus souvent tu auras des nombres
donc qs 1à 12 pour ton cas
certains proposent le random de la sequence entrée là tu pourras donner tes lettres

sur excel
colonne A tu rentres les chausettes
colonne B tu rentres =alea()
ensuite tu sélectionne une cellule de colonne b puis données  de aà z pour ordre croissant
tu as alors un random des chaussettes
Si alea qui cahnge te gonfle
après alea tu fais copier
tu colles en colonne C le collage spécial "valeurs" et tu demanderas là de réorganiser par ordre croissant ou décroissant

Bref pour des échantillons il ya pléthore de sites.

Perso j'aimerais bien que tu détailles l'algorithme que tu fais tourner.

Prendre un random séquence c'est comme bosser le dénombrement par les combinaisons, arrangements, permutations...
Prendre élément par élément c'est comme bosser le dénombrement par ce que j'appelle une méthode séquentielle (premier élément, deuxième élément, troisième...
C'est idem
donc pas d'erreurs possibles de ce coté là.
Pour prendre une image facile: un jeu de carte , on bat les cartes,puis on étale de gauche à droite le dessus du paquet au fur et mesure = méthode par random de la séquence
Le séquentiel ici c'est on bat les cartes  on prend la première, on rebat les cartes on prend la deuxieme, on rebat les cartes on prend la trosième
Bref on refait du random répété, aucune idéee au niveau informatique si c'est génant ,
c'est au moins du random redondant je trouve.
Apres si c'est plus facile à écrire en informatique, ok aussi.
Et si le sequentiel est fait autrement , ben c'est ok aussi , cela m'intéresse.

Bref, tu fais quoi de départ a arrivée si tu devais l'écrire en français.
Tu as toujours dit que l'algorithme pouvait s'écrire de base en français il me semble

PS: de temps en temps je fais un peu d'apprentissage de python, dans 10 ans je saurais lire le code de GBZM !!!!!
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 12:09
Oh, mon algorithme est très simple.
Dans mon bac, j'ai 2N chaussettes, c'est à dire que je me crée une liste de N paires de chaussettes.
Je prends une chaussette à la fois soit 2N prises, au hasard.
Cette chaussette fait partie d'une paire.
je regarde dans ma liste si cette chaussette n'est pas déjà pendue, c'est à dire s'il en reste au moins une de la paire, sinon, je recommence.
je regarde si la précédente n'était pas de le même paire
je note qu'il reste une chaussette de la paire considérée.

Important : une paire de chaussettes est constituée de deux chaussettes identiques indiscernable. C'est la différence importante avec le code de Gbzm : la liste construite peut être considérée comme une liste de N paires, chaque paire a une chaussette gauche et une chaussette droite. Dans son code il teste si la chaussette gauche et la chaussette droite font partie de la même paire, si ce n'est pas le cas, il supprime la paire de sa liste. En d'autre termes, il ne pend pas 2N chaussettes mais N paires de chaussettes. Dans un sens, ça peut se comprendre, puisqu'on a deux mains, on peut pendre deux chaussettes à la fois.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 13:34
c'est pas bien clair pour moi les if then elseif mais bon
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 14:03
if, then, else ne sont pas des mots français.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 14:12
ben moi j'attends de fléchages de ce type
ok on a un sac de chaussettes
je prends une chaussettes for i in le sac ou fait in rand le sac
ok j'en tiens une
si chaussettes de meme paire? encore dans le sac, alors quoi?
sinon quoi

enfin bref si tu pouvais me faire des phrases de ce genre, peut-ètre que je comprendrais,
ou peut-ètre pas...
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 15:41
Je vais essayer.
Je note dans ma machine la couleur (sa lettre) de chaque paire et à côté le nombre de chaussettes de la paire, c'est à dire 2.
Je tire un nombre au hasard entre 1 et N, le nombre de paires.
Je regarde si ce numéro correspond à une paire dont les deux chaussettes n'ont pas encore été pendues.
Je prends un chaussette. Je dis que cette chaussette appartient à la paire X.
J'ai noté le numéro de la paire à qui appartenait la chaussette précédente Xp.
Si X == Xp alors j'ai trouvé une paire. Il y a donc au moins une paire côte à côte sur le fil.
Dans tous les cas, je note que la paire X a une chaussette de moins dans le sac. C'est une chaussette de la paire Xp, pour le coup suivant.
Je continue, parce que toutes les chaussettes doivent être pendues.
Donc, à la fin, j'ai noté que j'avais une paire côte à côte, ou pas.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mar 26 Juil - 22:55
Je suis content car j'ai réussi à le coder en matlab.
Bon le code peut faire sourire j'en sais rien,
mais il est dans l'esprit matlab, pas de boucles (sauf pour itérer de refaire le processus de base),
donc de la vectorisation (toute idiote bete, mais bon).
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 11:47
Salut Beagle,
Bravo, je ne savais pas que tu te lançais dans l'informatique.
A mon avis, pour apprendre l'informatique, le meilleur langage est Basic, suivant le principe qu'il vaut mieux apprendre à marcher avant d'apprendre à courir.
Peux-tu montrer ton code ? Que donne-t-il à l'exécution ?
Bonne journée.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 12:04
Salut Pierre,
j'ai matlab 2018 je crois qui dort dans l'ordi tranquillement.
Il m'arrive de temps en temps de lire qqs vidéos youtube, mais gros manque de temps.

Ensuite pour le boulot j'ai accepté de me mettre aux bases d'excel, et idem j'ai vu qqs vidéos de VBa excel.
Quleques bidouillages.

Comme tout le monde parle de python, idem de temps en temps je regarde les bases,
mais toujours en touriste.

Mais finalement par imbibition quelques petits trucs rentrent.

Voilà, pas très performant pour le moment, mais ça avancera comme ça.

Dommage que matlab soit payant une premiere fois, puis tient la fonction truc est dans le module machin en supplément grr...
A ce titre python est préferable.

Pour le code je t'en parle en privé.Je n'expose plus trop ce qui relève d'hypothèses ou d'idées balancées de premiere reflexion...
Je le faisais sur maths forum avec des gens bienveillants, mais les blackmaths de l' ultra-maths sont arrivés un jour...
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 12:11
Concernant Python, les informaticiens (cad les professionnels de l'informatique) attrapent des boutons quand il voient un code Python.
Par contre, ça me parait une bonne idée d'apprendre VBA sur Excel.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 12:34
Bah je trouve que tout ceci est assez proche, et l'avantage de toucher à tout c'est de voir pourquoi telle chose est faite ainsi dans ce langage ci et fait autrement dans un autre langage,
mais cela s'éclaire les uns les autres,
les variables,  les fonctions,les boucles, les modules, le débug, la programmation orientée objet,
en fait tu comprends mieux des trucs qui semblent là tu sais pas bien pourquoi dans un seul langage.

J'imagine que la déclaration des variables, l'indentation seule qui tient lieu et place de séparateur des parties peuvent ètre critiquées par un pro?
Je sais pas.
Python est tout de meme simple, gratuit, tres répandu, donc des explications multiples sur le web avec un mot clé,
c'est appréciable.

Pour en revenir à mon code, il semble donner la bonne frequence à vue de nez, mais je n'ai pas lancé de grandes séries.
Donc je vérifie cela et si c'est bon je t'en reparle.
Mais là j'ai du boulot en retard ...
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 13:16
Concernant Python, la réponse est simple : un langage informatique est fait pour pouvoir être écrit et relu par un humain. Les informaticiens ont appris une façon de penser qui est assez logique pour faire faire par la machine ce qu'ils veulent qu'elle fasse. Les langages informatiques sont des passerelles entre l'homme et la machine.
Le langage Python ne remplit pas cette méthode. Il est écrit pour les humains et moins ils ont de logique informatique mieux c'est. En d'autres termes, c'est un langage qui utilise l'intuition et non la logique de l'espèce humaine.
L'expression "descendre un programme" veut dire "à partir d'un code, écrire l'algorithme en français de ce que fait le programme". J'ai essayé avec un code Python, j'ai renoncé.
Détail technique : Python peut faire des petits trucs, compatibles avec les besoins des étudiants, mais certainement pas des logiciels complets.

Je ne suis pas le seul à penser ce genre de choses :
https://www.ilemaths.net/sujet-programmation-en-basic-881205.html

Petite application de ce que j'argumente : dans son programme , Gbzm pend au mieux N chaussettes et pas 2N chaussettes, comme on fait d'habitude après une lessive.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 14:48
Dans le code de GBZM les chaussettes sont dans une liste de i 1à 100 et j = 2 la liste contient bien 200 chaussettes.
Dlzlogic
Dlzlogic
Admin
Messages : 9511
Date d'inscription : 26/04/2019
Age : 80
Localisation : Proville
http://www.dlzlogic.com

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 15:41
Je recopie le code de Gbzm et je rajoute des commentaires
   def Etendage() :
       favorable=1
       derniere = -1
       Aetendre=Lessive.copy()    // Là ce sont les N paires
       while len(Aetendre)>0 :      // tant qu'il reste des paires c'est équivalent à for (i=N ; i>0; i=i-1)
           chaussette=rd.choice(Aetendre)    // chaussette est une paire
           if chaussette[0]!=derniere :
               derniere=chaussette[0]
               Aetendre.remove(chaussette)     // on supprime de la liste la paire repérée.
           else :
               favorable=0
               break
       return favorable

De toute façon seule la liste des chaussettes pendues au fur et à mesure peut lever le doute.
avatar
beagle
Messages : 3699
Date d'inscription : 29/06/2019

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Mer 27 Juil - 15:50
J'ai du mal avaec l'indexation,
mais il ya 200 chaussettes 100 rangées deux colonnes (ou l'inverse)
pour meme rangée il s'agit de la paire
Le total où on tire est l'ensemble des 200 qui va diminuer avec celles enlevées
c'est chaussettes identiques par meme indexation de rangée que je peine à voir
Contenu sponsorisé

Ben et ses chaussettes. - Page 2 Empty Re: Ben et ses chaussettes.

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum