Laboratorio Práctica 2. Programación Modular Usando Funciones

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 3

Laboratorio

Práctica 2. Programación modular usando funciones


Unidad 3. Programación modular

1. Objetivos

● Comprender los conceptos básicos sobre la codificación de funciones en Python.


● Desarrollar programas que involucren programación modular mediante el uso de funciones.

2. Marco teórico

Las funciones, recurso presente en la gran mayoría de lenguajes de programación, permiten al programador crear
sub-programas en los que se encapsulan segmentos de código que van a ser utilizado múltiples veces,
permitiendo organizar el programa de manera modular.

Al crear una función se debe dejar claro, por medio de comentarios (docstring), las especificaciones que
describen las condiciones de los argumentos (datos de entrada) y las garantías del trabajo que hace la función.
Las funciones deben ser probadas, una por una, a medida que se van integrando al programa principal.

3. Tareas para realizar

Esta práctica consiste en la implementación de un programa para el juego de Picas y Fijas, el cual debe ser
desarrollado de manera modular usando funciones.

Resumen del juego

Picas y Fijas Triqui se jugará entre el usuario y el computador. El juego consiste en tratar de adivinar un
número en la menor cantidad de intentos. En cada intento, el jugador dice 4 dígitos (no repetidos) y el
oponente le da pistas de cuántos aciertos tuvo, sin indicarle cuales fueron, de la siguiente forma:

 Si algún dígito que dice el jugador se encuentra dentro del número a adivinar, pero no está en la
posición correcta, se llama PICA.
 Si el dígito se encuentra en la posición adecuada, se llama FIJA.

Universidad de Antioquia – Facultad de Ingeniería – Ude@ Educación Virtual


Así, las pistas serán la cantidad de PICAS y la cantidad de FIJAS que se tienen. El juego termina cuando
algún jugador tiene 4 FIJAS (4 dígitos en el orden adecuado).

Funcionamiento del programa

Se deberá implementar un programa usando funciones que le permita al usuario jugará contra el
computador, y que este último responda de forma coherente a las jugadas del usuario. A continuación, se
dan los requerimientos que deberá cumplir el programa a implementar:

 El programa deberá generar un número aleatorio de 4 dígitos no repetidos que no mostrará al


usuario y que guardará como el número a adivinar

 El programa preguntará al susario el número de intentos que desea para adivinar el número
generado por el computador.

 Para cada intento, el programa debe preguntar al usuario por un número de cuatro dígitos no
repetidos

 Para cada intento que se haga, su programa debe validar si el número es de 4 dígitos. Si no cumple
esta condición, debe imprimir "el número no tiene cuatro dígitos".

 Si el número es de cuatro dígitos, debe verificar que no tenga dígitos repetidos. Si no cumple esta
condición, debe imprimir "el numero tiene dígitos repetidos".

 Si cumple la condición, debe imprimir cuantas picas y cuantas fijas tiene el intento que está
haciendo, de la forma # picas # fijas.

 Si se acaban los intentos y no adivina el número, debe imprimir: "Se acabaron sus intentos. El
numero era: X", siendo X el número que debía adivinar, pero si en algún intento adivina el número,
debe imprimir "¡Felicitaciones! ha adivinado el numero" e ignorar los intentos restantes hasta
empezar un nuevo juego.

Funciones que se deben realizar:

1. generar(): Genera un número aleatorio de cuatro dígitos, verificando que ninguno de los digitos esté
repetido. Retorna un número entero de 4 digitos.
2. leer_num(): Lee un número del usuario, verificando que sea de cuatro dígitos y ninguno de los dígitos
sea repetido. Retorna un número entero de 4 digitos.
Universidad de Antioquia – Facultad de Ingeniería – Ude@ Educación Virtual
3. verificar(num_u,num_m): Verificar cuántas picas o fijas tiene el usuario. Retorna dos valores enteros
con los números de las fijas y picas
4. Parte principal del programa: Algoritmo que hace el llamado de todas las funciones y controla los
ciclos del juego.

4. Evaluación

Envíe a través de la plataforma Moodle una carpeta comprimida en formato .zip o .rar con todos los archivos
desarrollados para la práctica en las herramientas sugeridas por el docente del curso. Los algoritmos enviados
deberán sustentarse ante el profesor.

Universidad de Antioquia – Facultad de Ingeniería – Ude@ Educación Virtual

También podría gustarte