Universidad del Valle de Guatemala
Introducción a la Programación
Sección 100
María Fernanda Chavarría 11455
Gabriela Rosales 11538
INVESTIGACIÓN
Preguntas
Meta:
Lograr que el tragamonedas funcione, restándole la cantidad de fichas
que apuesta al momento en que los números son diferentes y sumarle el
doble de fichas que apuesta al momento en que los números sean
iguales.
Datos:
La máquina tiene 20 monedas, muestra números al azar del 1 al 3, si
pierde se le resta la cantidad de fichas apostadas y si gana se suman el
doble de fichas apostadas.
Restricciones:
Debe ingresar la palabra si para continuar jugando.
La apuesta debe ser mayor a cero y menor que la cantidad de
monedas que tiene la máquina.
No puede ingresar números negativos
Si los números al azar son todos iguales, gana el juego.
Si los números al azar son diferentes, pierde el juego.
El juego no puede continuar si la máquina se queda sin monedas
es cero.
Proceso:
Se analiza la tarea que debe desempeñar el juego.
Se comienza pidiendo algunos datos necesarios como lo es el
nombre del jugador.
Se le indica al jugador cuántas monedas tiene la máquina.
Se hacen contadores para que automáticamente los valores se
vayan sumando o restando y para tener un mejor control de lo que
está pasando durante el juego.
Se realizan definiciones para que el programa sea más ordenado.
Se utiliza un ciclo While para que el jugador juegue mientras
ingresa una variable.
Se utilizan If para plantear algunas restricciones e indicaciones
que se deben cumplir para realizar cierto acto.
Se indica que si gana el juego, es decir, que si aparecen tres
números iguales, las monedas apostadas se multipliquen por dos.
Se indica que si pierde el juego, es decir, que si aparecen tres
números diferentes, las monedas apostadas se deben restar.
Se indica que el juego no puede continuar si el número de
monedas es cero.
Se programan las graficas que deben salir al momento en que el
jugador coloque finalizar como variable.
Solución:
El tragamonedas le pide la apuesta al jugador y automáticamente le tira
tres números al azar, si estos números son iguales, la apuesta se
multiplica por dos y si los números son diferentes, se le resta la apuesta
al número de monedas. El programa sigue funcionando mientras el
jugador ingrese la variable si, el programa finaliza al ingresar la variable
finalizar; en éste momento las gráficas que los juegos jugados y de la
cantidad de monedas que posee el jugador, aparece automáticamente.
Diseño
¿Cómo llevará a cabo la solución? Variables y objetos a utilizar.
Se utilizaron variables como: while, def, if, else, elif, return, print,
contadores.
While: para que funcione el programa mientras el jugador ingrese
determinada palabra.
Def: para definir funciones y que el programa sea más ordenado.
If: para establecer que el programa debe realizar un acto
determinado para poder continuar.
Else y elif: para determinar que si no realiza lo que se indicó en el
If, debe poder realizar otros dos actos más.
Return: para retornar un dato determinado
Print: para imprimir cierto dato en pantalla.
Contadores: se utilizaron contadores para ir teniendo un control
de lo que pasa en el programa, cuántos juegos ha jugado, cuántos
ha perdido, cuántos ha ganado y el número de monedas que lleva
acumuladas.
Gráficas: se programaron gráficas para que muestren el resultado
del juego, para éstas se utilizaron variables como xlim, ylim, xlabel,
y labe, title, show, arange, xticks, yticks, grid, y bar.
From pylab import: se importó una biblioteca.
Descripción del curso lógico de la solución del problema. (Narrativo)
Le da una bienvenida al usuario
Le pide que ingrese su nombre
Le indica cuántas monedas tiene la máquina
Le pide que ingrese Si, si desea continuar o Finalizar, si quiere que
termine el juego.
Le pide que ingrese su apuesta
Le tira tres números al azar.
Verifica si los números son iguales, gana el juego y multiplica la
apuesta por dos, acumulando dicha cantidad como cantidad de
monedas y si pierde, es decir, si los números son diferentes, le
resta la cantidad apostada acumulando dicha cantidad como
cantidad de monedas.
Le muestra al usuario cuántas monedas tienen disponibles
Le muestra la cantidad de juegos jugados
Le muestra la cantidad de juegos perdidos
Le muestra la cantidad de juegos ganados
Le pregunta si desea continuar o no, si desea continuar repite el
mismo ciclo y si no le muestra las gráficas, primero una lineal,
luego una de barras vertical y por último una de barras horizontal.
Funciones desarrolladas por el programador. Para que se usan.
While: Se utiliza para realizar un ciclo.
If: Se utiliza para plantear ciertas restricciones en el programa.
Else: Se utiliza para plantear ciertas restricciones en el programa.
Elif: Se utiliza para plantear ciertas restricciones en el programa.
Print: Se utiliza para imprimir alguna información.
Return : Se utiliza para retornar un valor determinado.
Pass: Se utiliza para seguir con el programa.
From Pylab import: Se importa una biblioteca.
Xlim: Se indica el límite de la gráfica en el eje x.
Ylim: Se indica el límite de la gráfica en el eje y.
Plot: Se utiliza para que salga la línea de la gráfica
Show: Se utiliza para que se muestre la gráfica.
Arange: Genera un rango de valores
Xlabel: Etiqueta al eje x.
Ylabel: Etiqueta al eje y.
Title: Se coloca un título a la gráfica.
Grid: muestra la línea de parrilla de la gráfica
Xticks: valor de las etiquetas en el eje y
Yticks: valor de las etiquetas en el eje x.
Bar: Hace una gráfica de barras vertical.
Barh: hace una gráfica de barras horizontal.
Conclusiones: describir qué aprendieron y qué beneficio obtuvieron
al realizar este proyecto.
Pudimos adquirir mayor información sobre el proceso de
programación.
Se obtuvo un pensamiento más abstracto y lógico al programar
la máquina tragamonedas.
Se adquirió mejor manejo del Wiki
Aprendimos a hacer gráficas en python
Adquirimos mejor manejo de python al realizar un programa
más complejo.
Aprendimos a trabajar en pareja y realizar un buen trabajo en
equipo.
Bibliografía y citas correspondientes.
http://www.wikispaces.com/ se utilizó para crear el wiki
www.youtube.com se subió el video
http://uvgalgoritmos2011.wikispaces.com/ página de
programación para subir resultados
http://www.python.org se descargo python
http://sourceforge.net/projects/matplotlib/files/matplotlib/mat
plotlib-1.0.1/ descargar matplotlib python
http://es.wikipedia.org/wiki/Python Información sobre python
http://sourceforge.net/projects/numpy/files/NumPy/1.5.1/ para
descargar Numpy