Está en la página 1de 7

Tarea 13

(16 puntos)
Resuelva los 8 problemas, que están en las siguientes hojas.
Las soluciones se deben incluir en un archivo pdf, con la siguiente información:
1) Caratula (Nombre Completo, CI, Carrera, Materia(s) y Fecha)
2) Por cada solución de un problema debe incluir:
a) Análisis del problema.
b) Diagrama de flujo
c) Prueba de escritorio.
d) Código fuente en Python.
e) Prueba de la ejecución del programa. Con 3 casos de pruebas al menos.

El nombre del archivo pdf debe llevar el nombre suyo con el siguiente formato:

ApellidoPaterno_ApellidoMaterno_Nombres.pdf
1. Análisis de números. Realice un programa que encuentre el número de elementos mayores
al promedio de todos los elementos.

Ejemplo de Entrada
Ingrese el número de elementos: 10
Ingrese los números: 3.4 5 6 1 6.5 7.8 3.5 8.5 6.3 9.5

Ejemplo de Salida
El promedio es 5.75
Número de elementos mayores a la media es 6

2. Contando las ocurrencias de cada letra. Realice un programa que cuente las ocurrencias de
cada letra:
a. Genere 100 letras minúsculas de forma aleatoria.
b. Cuente la aparición de cada letra.

Ejemplo de Salida
Las letras minúsculas son:
e y l s r i b k j v j h a b z n w b t v
s c c k r d w a m p w v u n q a m p l o
a z g d e g f i n d x m z o u l o z j v
h w i w n t g x w c d o t x h y v z y z
q e a m f w p g u q t r e n n w f c r f

Las cantidades por cada letra son:


5 a 3 b 4 c 4 d 4 e 4 f 4 g 3 h 3 i 3 j
2 k 3 l 4 m 6 n 4 o 3 p 3 q 4 r 2 s 4 t
3 u 5 v 8 w 3 x 3 y 6 z

3. Encontrar el par más cercano. Esto es un problema geométrico, realice un programa que
dado un conjunto de puntos, encuentre el par de puntos más cercanos entre sí. En la
siguiente Figura, por ejemplo, los puntos (1, 1) y (2, 0.5) están más próximos entre sí.
Ejemplo de Entrada
Ingrese el número de puntos: 8
Ingrese 8 puntos: -1 3 -1 -1 1 1 2 0.5 2 -1 3 3 4 2 4 -0.5

Ejemplo de Salida
Los dos puntos más cercanos son (1, 1) y (2, 0.5)

4. Sudoku. Realice un programa para comprobar si una determinada solución de Sudoku es


correcta. Un problema interesante que aparece en los diarios todos los días. Es un
rompecabezas de la ubicación de los números, comúnmente conocido como Sudoku. Este
es un problema muy desafiante.

Verifique que los valores ingresados sean válidos, verificando que cada valor esté entre 1 y
9 y que cada valor sea válido en su cuadrícula correspondiente. Si fuera una solución válida
imprima “Solución válida”, caso contrario imprima “Solución no válida”.

Ejemplo de Entrada
Ingrese una solución de rompecabezas de Sudoku:
9 6 3 1 7 4 2 5 8
1 7 8 3 2 5 6 4 9
2 5 4 6 8 9 7 3 1
8 2 1 4 3 7 5 9 6
4 9 6 8 5 2 3 1 7
7 3 5 9 6 1 8 2 4
5 8 9 7 1 3 4 6 2
3 1 7 2 4 6 9 8 5
6 4 2 5 9 8 1 7 3
Ejemplo de Salida
Solución válida
5. Juego: ahorcado. Escriba programa del juego del ahorcado que genere al azar una palabra
y le pida al usuario que adivine una letra a la vez, como se muestra en el ejemplo de
entrada y salida. Cada letra de la palabra se muestra como un asterisco. Cuando el usuario
adivina correctamente, se muestra la letra real. Cuando el usuario termine una palabra,
muestre el número de errores y pregunte al usuario si desea continuar jugando con otra
palabra.
Declare un arreglo para almacenar las palabras, de la siguiente manera:

# Adiciona alguna palabra que desee en esta lista


palabras = ["escribir", "programa", ...]
Ejemplo de Entrada y Salida
(Adivine) Ingrese una letra de la palabra ********> p
(Adivine) Ingrese una letra de la palabra p*******> r
(Adivine) Ingrese una letra de la palabra pr**r***> p
p ya está en la palabra
(Adivine) Ingrese una letra de la palabra pr**r***> o
(Adivine) Ingresa una letra de la palabra pro*r***> g
(Adivine) Ingrese una letra de la palabra progr***> n
n no está en la palabra
(Adivine) Ingrese una letra de la palabra progr***> m
(Adivine) Ingrese una letra de la palabra progr*m*> a
La palabra es programa. Te equivocaste 1 vez
¿Quieres adivinar otra palabra? Ingrese s o n>
6. Juego: juego del tres en raya. En el juego de tres en raya, dos jugadores se turnan para
marcar una celda disponible en una cuadrícula de 3 x 3 con sus respectivas fichas (ya sea X
u O). Cuando un jugador coloca tres fichas en una fila horizontal, vertical o diagonal en la
cuadrícula, el juego termina y ese jugador gana. Un empate (sin ganador) ocurre cuando
todas las celdas de la cuadrícula se llenan con fichas y ningún jugador logra una victoria.
Cree un programa para jugar el tres en raya. El programa solicita a dos jugadores que
ingresen una ficha X y una ficha O alternativamente. Cada vez que se ingresa una ficha, el
programa vuelve a mostrar el tablero en la consola y determina el estado del juego
(ganador, empate o continuar). Aquí hay un ejemplo de ejecución.

Ejemplo de Entrada y Salida


-------
| | | |
-------
| | | |
-------
| | | |
-------
Ingrese una fila (0, 1 o 2) para el jugador X: 1
Ingrese una columna (0, 1 o 2) para el jugador X: 1
-------
| | | |
-------
| |X| |
-------
| | | |
-------
Ingrese una fila (0, 1 o 2) para el jugador O: 1
Ingrese una columna (0, 1 o 2) para el jugador O: 2
-------
| | | |
-------
| |X|O|
-------
| | | |
-------
Ingrese una fila (0, 1 o 2) para el jugador X:
...
-------
|X| | |
-------
|O|X|O|
-------
| | |X|
-------
El jugador X ganó
7. Adivina las Capitales. Escribe un programa que solicite repetidamente al usuario que
ingrese una Capital de un país. Al recibir la entrada del usuario, el programa informa si la
respuesta es correcta. Suponga que 50 países y sus capitales se almacenan en un arreglo
bidimensional, como se muestra en la siguiente Figura. El programa solicita al usuario que
responda las capitales de todos los países y muestra el recuento total correcto. La
respuesta del usuario no distingue entre mayúsculas y minúsculas.

Argentina Buenos Aires


Bolivia Sucre
Brasil Brasilia
… …
… …

Ejemplo de Entrada y Salida


¿Cuál es la capital de Argentina? Buenos
La respuesta correcta debería ser Buenos Aires
¿Cuál es la capital de Bolivia? Sucre
Tu respuesta es correcta
¿Cuál es la capital de Brasil? ...
...
Las respuestas correctas son 35

8. Juego: conecta cuatro. Conecta cuatro es un juego de mesa para dos jugadores en el que
los jugadores sueltan sus fichas de colores alternativamente en una cuadrícula suspendida
verticalmente de siete columnas y seis filas, como se muestra a continuación.

El objetivo del juego es conectar cuatro fichas del mismo color en una fila, una columna o
una diagonal antes de que tu oponente pueda hacer lo mismo. El programa pide a dos
jugadores que suelten una ficha roja o amarilla alternativamente. Cada vez que se suelta
una ficha, el programa vuelve a mostrar el tablero en la consola y determina el estado del
juego (ganador, empate o continuar). Aquí hay un ejemplo de la ejecución:
Ejemplo de Entrada y Salida
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
---------------
Coloque una ficha roja en la columna (0–6): 0
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
|R| | | | | | |
---------------
Coloque una ficha amarilla en la columna (0–6): 3
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
|R| | |A| | | |
. . .
. . .
. . .
Coloque una ficha amarilla en la columna (0–6): 6
| | | | | | | |
| | | | | | | |
| | | |R| | | |
| | | |A|R|A| |
| | |R|A|A|A|A|
|R|A|R|A|R|R|R|
---------------
El jugador amarillo ganó

También podría gustarte