s3Eva_IT2007_T1 Máquina tragamonedas

Ejercicio3Eva_IT2007_T1 Máquina tragamonedas

Propuesta de solución en Python: py_pdf, también incluye versión en matlab: m_pdf

Considere el siguiente algoritmo de introducción al tema, Simplificando el ingreso del número por teclado:

# 3ra Evaluación I Término 2007
# Tema 1. Juego con maquina tragamonedas

# INGRESO
numero = int(input('numero abc:'))

# PROCEDIMIENTO
c = numero%10
numero = numero//10
b = numero%10
numero = numero//10
a = numero

premio = 0
if ((a==b) and (b==c) and(a==c)):
    premio = 20
if ((a==b)and (a!=c)) or ((a==c) and (a!=b)) or ((b==c) and (b!=a)):
    premio = 10

# SALIDA
print(premio)

Luego de revisar el algoritmo: ¿se comprende mejor la necesidad de usar cocientes y residuos? ¿considera viable el uso e este segundo algoritmo?


Algoritmo usando aleatorios sin Cocientes y Residuos

Instrucciones en Python

# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 3Eva_IT2007_T1 Máquina tragamonedas
# Propuesta: edelros@espol.edu.ec

import random as rnd

# INGRESO
monedas = int(input(" Cuantas monedas tiene?: "))

# PROCEDIMIENTO
caja = 15
trio = 0
par  = 0

turno = 0 
while (monedas>=5 and caja>=15):
    turno = turno + 1
    monedas = monedas - 5
    caja = caja + 5

    # sorteo de números
    # entero(aleatorio*posibles) + inicio
    a = int(rnd.random()*10) + 0
    b = int(rnd.random()*10) + 0
    c = int(rnd.random()*10) + 0
    
    if (a==b and b==c and c==a):
        caja = caja - 20
        monedas = monedas+20
        trio = trio + 1
    else:
        if (a==b or b==c or c==a):
            caja = caja - 10
            monedas = monedas+10
            par  = par + 1

# SALIDA
print(" Turnos jugados: ", turno)
print(" Trios: ", trio)
print(" Pares: ", par)
print(" monedas jugador: ", monedas)

Ejemplo:

>>> 
 Cuantas monedas tiene?: 25
 Turnos jugados:  1
 Trios:  0
 Pares:  1
 monedas jugador:  30
>>> 
 Cuantas monedas tiene?: 30
 Turnos jugados:  5
 Trios:  0
 Pares:  3
 monedas jugador:  35
>>> 

Presentadas las dos formas de algoritmos, ¿podría presentar una versión mejorada que integre lo mejor de las dos soluciones?


Diagrama de Flujo

diagrama de flujo TragaMonedas 02

ejercicios resueltos Python 3eva_it2007_t1 pdf

ejercicios resueltos Matlab 3eva_it2007_t1 pdf