Utilisez Ruby et Python pour trouver la probabilité qu'une carte avec un nombre naturel de 1 à 100 soit un multiple de 3 et non un multiple de 5.

Je suis en train de revoir les mathématiques du lycée, alors j'ai essayé de le résoudre en utilisant Ruby et Python.

Ben figure

ベン図.png

résoudre

En supposant que l'espace échantillon S = {1, 2, 3, ..., 98, 99, 100}, en laissant l'événement A être un multiple de 3 et l'événement B étant un multiple de 5, alors un multiple de 3 ou 5 Cartes qui sont des multiples de

E1 = A \cup B

--n (A) = Nombre de multiples de 3 = 100/3 = 33 feuilles --n (B) = Nombre de multiples de 5 = 100/5 = 20 feuilles --n (A \ cap B) Multiple de 3 et multiple de 5 = Nombre de multiple de 15 = 100/15 = 6 feuilles

Alors

n(E1) = n(A \cup B)
= n(A) + n(B) - n(A \cap B)
= 33 + 20 - 6
= 47

Donc une carte qui est un multiple de 3 mais pas un multiple de 5

n(E) = n(E1) - n(B)
= 47 - 20
= 27

La probabilité de tirer une carte qui est un multiple de 3 mais pas un multiple de 5

n(E) / n(S)
= 27/100

Écrire en rubis

L'ensemble de somme peut être calculé avec |. L'ensemble de produits est &.

> s = (1..100).to_a
=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
> a = []
=> []
> s.to_a.each{|i|
* a << i if i %3 == 0
> }
=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
> b = []
=> []
> s.to_a.each{|i|
* b << i if i % 5 == 0
> }
=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
> e1 = a | b
=> [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99, 5, 10, 20, 25, 35, 40, 50, 55, 65, 70, 80, 85, 95, 100]
> e = e1.length - b.length
=> 27
> e.to_f / 100
=> 0.27

Ecrire en Python

L'ensemble de somme peut être calculé avec la fonction union (). L'ensemble de produits est la fonction d'interruption ().

>>> a = set(range(3,101,3))
>>> b = set(range(5,101,5))
>>> e1 = a.union(b)
>>> e = len(e1) - len(b)
>>> float(e)/100
0.27

Addendum) L'ensemble de somme peut également être calculé avec |.

>>> a = set(range(3,101,3))
>>> b = set(range(5,101,5))
>>> e1 = a | b
>>> e = len(e1) - len(b)
>>> float(e)/100
0.27

J'ai également essayé d'utiliser Sympy.

>>> from sympy import FiniteSet
>>> ma = range(3,101,3)
>>> mb = range(5,101,5)
>>> a = FiniteSet(*ma)
>>> b = FiniteSet(*mb)
>>> e1 = a.union(b)
>>> e = len(e1) - len(b)
>>> float(e)/100
0.27

Fonction range () Easy.

référence

Recommended Posts

Utilisez Ruby et Python pour trouver la probabilité qu'une carte avec un nombre naturel de 1 à 100 soit un multiple de 3 et non un multiple de 5.
Découvrez le nom de la méthode qui l'a appelée à partir de la méthode qui est python
[Art de la coquille] Seulement quand c'est un multiple de 3 et un nombre avec 3 devient stupide
Il y a un modèle que le programme ne s'est pas arrêté lors de l'utilisation du thread Python
Une histoire qui facilite l'estimation de la surface habitable à l'aide d'Elasticsearch et de Python
[Python] Un programme pour trouver le nombre de pommes et d'oranges qui peuvent être récoltées
Lors de l'écriture dans un fichier csv avec python, une histoire que j'ai fait une légère erreur et n'a pas respecté la date de livraison
Comment gérer le problème du déplacement du répertoire actuel lorsque Python est exécuté depuis Atom
Je souhaite générer une sortie lors de la conversion de la valeur du type (par exemple, datetime) qui n'est pas pris en charge lors de la sortie de json avec python
Connaissances minimales requises pour traiter les «angles» et les «coordonnées» dans Ruby + Dans quelle direction est M. B du point de vue de M. A? Algorithme
[Version terminée] Essayez de connaître le nombre d'habitants de la ville à partir de la liste d'adresses avec Python
Avec PEP8 et PEP257, un codage Python qui n'est pas gênant à montrer aux gens!
[CleanArchitecture avec Python] Appliquez CleanArchitecture à une API simple étape par étape, et essayez de comprendre "quel type de changement est fort" dans la base de code.
Je pensais que c'était la même chose que python, et j'étais accro au problème que l'interpréteur ruby ne démarre pas.
Solution de programmation concurrentielle utilisant le produit du multiple commun minimum de a et b et du nombre commun maximum ab
Comment mettre à niveau correctement le logiciel lors de la construction de Linux (CentOS) avec Vagrant ~ En utilisant l'exemple de mise à niveau de Python 2.7 vers Python 3.6 ~
Il semble que la version de pyflakes ne soit pas la dernière lorsque flake8 est installé
[Circuit x Python] Comment trouver la fonction de transfert d'un circuit en utilisant Lcapy
Python --Lisez les données d'un fichier de données numériques et recherchez la ligne de régression multiple.
Lorsque vous utilisez PyQtGraph avec Python Pyside, faites attention à l'ordre d'importation
WEB grattage avec python et essayez de créer un nuage de mots à partir des critiques
[Python Data Frame] Lorsque la valeur est vide, remplissez-la avec la valeur d'une autre colonne.
De l'état initial de CentOS8 à l'exécution de php python perl ruby avec nginx
Essayez de créer une table d'enregistrement de bataille avec matplotlib à partir des données de "Schedule-kun"
Effectuez une recherche Twitter à partir de Python et essayez de générer des phrases avec la chaîne de Markov.
Extraire des images et des tableaux de pdf avec python pour réduire la charge de reporting
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
Comment savoir quel processus utilise le port localhost et l'arrêter
Le moment auquel la valeur de l'argument par défaut est évaluée diffère entre Ruby et Python.
Une note de malentendu lors de la tentative de chargement de l'intégralité du module self-made avec Python3
Essayez de créer une forme d'onde (spectre audio) qui se déplace en fonction du son avec python
Il est facile d'exécuter SQL avec Python et de générer le résultat dans Excel
Trouvez la partie 575 de Wikipedia en Python
J'ai essayé la version python de "Prise en compte de la réponse de Conner Davis" Impression de nombres de 1 à 100 sans utiliser de boucle, récursive, goto "
Recueillez des tweets sur "Corona" avec python et détectez automatiquement les mots qui sont devenus un sujet brûlant en raison de l'influence de "Corona"
Je veux découper uniquement le visage d'une image de personne avec Python et l'enregistrer ~ Détection de visage et rognage avec face_recognition ~
Un script qui envoie un ping au serveur enregistré et envoie un e-mail avec Gmail un certain nombre de fois en cas d'échec
J'ai écrit une classe qui facilite l'écriture en spécifiant les paroles de la partie lors de l'utilisation de Mecab avec python
Une histoire que je ne savais pas charger de mixin lors de la création d'une façade avec l'application django [Débutant apprend python avec un livre de référence]
Récupérez la chaîne correspondante dans l'expression régulière et réutilisez-la lors du remplacement sur Python3
Python --Lisez des données à partir d'un fichier de données numériques pour trouver des matrices, des valeurs propres et des vecteurs propres distribués co-distribués
Une bibliothèque qui surveille la vie et la mort d'autres machines en envoyant un ping à partir de Python
Feuille de route d'apprentissage qui vous permet de développer et de publier des services à partir de zéro avec Python
[Python] Programmation pour trouver le nombre de a dans une chaîne de caractères qui se répète un nombre spécifié de fois.
Obtenez de manière récursive la liste Excel dans un dossier spécifique avec python et écrivez-la dans Excel.
J'ai créé un serveur avec socket Python et ssl et j'ai essayé d'y accéder depuis le navigateur
Comment trouver la quantité moyenne d'informations (entropie) de la distribution de probabilité d'origine à partir de l'échantillon
Renvoyez les données d'image avec Flask of Python et dessinez-les dans l'élément canvas de HTML
[Python / Ruby] Comprendre le code Comment obtenir des données en ligne et les écrire au format CSV
Comment connaître le nombre de GPU de python ~ Remarques sur l'utilisation du multitraitement avec pytorch ~
[Python débutant] Variables et portée à l'intérieur de la fonction (lorsque le traitement à l'intérieur de la fonction est reflété à l'extérieur de la fonction et quand il n'est pas reflété)
J'ai écrit un doctest dans "J'ai essayé de simuler la probabilité d'un jeu de bingo avec Python"
Script Python qui peut vérifier l'état du serveur à partir du navigateur
[Python] Qu'est-ce qu'un tuple? Explique comment utiliser sans toucher et comment l'utiliser avec des exemples.
Essayez de visualiser les nutriments des flocons de maïs que le champion de M-1 Milkboy a dit avec Python
Précautions lors de la saisie à partir de CSV avec Python et de la sortie vers json pour faire exe