Laboratorio Práctica 2. Programación Modular Usando Funciones
Laboratorio Práctica 2. Programación Modular Usando Funciones
Laboratorio Práctica 2. Programación Modular Usando Funciones
1. Objetivos
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.
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.
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.
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 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.
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.