3.1 Simulación del Lanzamiento de una Moneda (Cara o Cruz)
Forma 1: Usando python base
import random
n = int(input('Ingrese la cantidad de simulaciones o lanzamientos: '))
cara = 0
cruz = 0
for _ in range(n):
resultado = random.random() # Valor entre 0 y 1
if resultado < 0.5:
cara += 1
else:
cruz += 1
prom_cara = cara / n
prom_cruz = cruz / n
print(f'Probabilidad de sacar CARA: {prom_cara}')
print(f'Probabilidad de sacar CRUZ: {prom_cruz}')
Forma 2: Versión Compacta con NumPy
m = int(input('Ingrese la cantidad de simulaciones o lanzamientos: '))
lanzamientos = np.random.randint(0, 2, m)
probabilidad_cara = np.sum(lanzamientos == 0) / m
probabilidad_sello = np.sum(lanzamientos == 1) / m
print(f"Probabilidad de cara: {probabilidad_cara:.2f}")
print(f"Probabilidad de sello: {probabilidad_sello:.2f}")
Explicación: Se simulan lanzamientos de moneda y se calculan las probabilidades para cada resultado.
3.2 Simulación del Lanzamiento de un Dado Equilibrado
Ejemplo:
m = int(input('Ingrese la cantidad de intentos: '))
lanzamientos = np.random.randint(1, 7, m)
probabilidad_2 = np.sum(lanzamientos == 2) / m
probabilidad_3 = np.sum(lanzamientos == 3) / m
probabilidad_5 = np.sum(lanzamientos == 5) / m
print(f"Probabilidad de 2: {probabilidad_2:.2f}")
print(f"Probabilidad de 3: {probabilidad_3:.2f}")
print(f"Probabilidad de 5: {probabilidad_5:.2f}")
Explicación: Se simulan lanzamientos de un dado de 6 caras y se calculan las probabilidades de obtener ciertos números.
3.3 Simulación del Lanzamiento de un Dado No Equilibrado
Ejemplo:
m = int(input("Ingrese la cantidad de intentos: "))
numeros = [1, 2, 3, 4, 5, 6]
probabilidades = np.array([2, 2, 1, 1, 1, 1]) / 8 # Suma = 8
lanzamientos = np.random.choice(numeros, size=m, p=probabilidades)
probabilidad_2 = np.sum(lanzamientos == 2) / m
probabilidad_3 = np.sum(lanzamientos == 3) / m
probabilidad_5 = np.sum(lanzamientos == 5) / m
print(f"Probabilidad de 2: {probabilidad_2:.2f}")
print(f"Probabilidad de 3: {probabilidad_3:.2f}")
print(f"Probabilidad de 5: {probabilidad_5:.2f}")
Explicación: Se simulan lanzamientos de un dado con probabilidades modificadas para obtener ciertos resultados.
3.4 Simulación del Juego Piedra, Papel o Tijera
Ejemplo:
N = int(input("Ingrese el número de jugadas: "))
opciones = ['piedra', 'papel', 'tijera']
elecciones = np.random.choice(opciones, size=N)
prob_piedra = np.sum(elecciones == 'piedra') / N
prob_papel = np.sum(elecciones == 'papel') / N
prob_tijera = np.sum(elecciones == 'tijera') / N
print(f"Probabilidad de 'piedra': {prob_piedra:.2f}")
print(f"Probabilidad de 'papel': {prob_papel:.2f}")
print(f"Probabilidad de 'tijera': {prob_tijera:.2f}")
Explicación: Se simulan jugadas de “piedra, papel o tijera” y se calculan las probabilidades de cada opción.