Ejercicio: 3Eva2007TI_T1 Máquina tragamonedas
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 en Python
usando aleatorios sin Cocientes y Residuos
# 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

