Examen 2 de junio de 2021

Ejercicio 1

Escriba un programa que calcule a partir de una fecha de un año no bisiesto el número de días que han transcurrido en ese año y el número de meses lunares completos que abarcan.

Se recuerda que un mes lunar dura aproximadamente 29,53 días.

CALENDARIO LUNAR
Este programa convierte una fecha de un año NO bisiesto a un calendario lunar.
Indique el día: 1
Indique el mes: henero
El mes henero no existe.
CALENDARIO LUNAR
Este programa convierte una fecha de un año NO bisiesto a un calendario lunar
Indique el día: -5
Indique el mes: marzo
El día -5 de marzo no existe.
CALENDARIO LUNAR
Este programa convierte una fecha de un año NO bisiesto a un calendario lunar
Indique el día: 29
Indique el mes: febrero
El día 29 de febrero no existe.
CALENDARIO LUNAR
Este programa convierte una fecha de un año NO bisiesto a un calendario lunar
Indique el día: 1
Indique el mes: febrero
El día 1 de febrero es el día 32 del año.
Habrán pasado 1 lunas y 2.47 días.
CALENDARIO LUNAR
Este programa convierte una fecha de un año NO bisiesto a un calendario lunar
Indique el día: 31
Indique el mes: diciembre
El día 31 de diciembre es el día 365 del año.
Habrán pasado 12 lunas y 10.64 días.

Ejercicio 2

Marcus Cubitus y Julius Humerus, legionarios apasionados por los juegos de dados, aprovechan los días cada vez más largos del mes de Iunius para probar nuevos juegos. En este juego, en cada turno un jugador lanza cuatro dados y se anota la suma de los valores impares obtenidos, mientras que el otro jugador lanza tres dados y se anota la suma de los valores pares obtenidos. Gana el turno el jugador que obtenga más puntos y gana la partida el jugador que haya ganado más turnos.

Escriba un programa que muestre una partida de este juego, detallando quién gana cada turno y la puntuación de cada jugador tras cada turno.

JUEGO DE DADOS
¿Cuántos turnos va a tener la partida? -2
¡La partida debe tener al menos un turno!
JUEGO DE DADOS
¿Cuántos turnos va a tener la partida? 2
  Turno 1
    Tirada de Cubitus: 5 1 3 1 => 10 puntos
    Tirada de Humerus: 1 3 3   => 0 puntos
  Turno 2
    Tirada de Cubitus: 2 1 2 1 => 2 puntos
    Tirada de Humerus: 6 2 1   => 8 puntos
Han empatado (a 1).
JUEGO DE DADOS
¿Cuántos turnos va a tener la partida? 3
  Turno 1
    Tirada de Cubitus: 2 3 2 4 => 3 puntos
    Tirada de Humerus: 5 1 1   => 0 puntos
  Turno 2
    Tirada de Cubitus: 4 4 2 3 => 3 puntos
    Tirada de Humerus: 1 3 2   => 2 puntos
  Turno 3
    Tirada de Cubitus: 3 4 2 5 => 8 puntos
    Tirada de Humerus: 2 4 2   => 8 puntos
Ha ganado Cubitus (2 a 0).

Ejercicio 3

Escriba un programa que simule el lanzamiento repetido de una moneda mostrando si ha salido cara (⚪ = \u26AA) o cruz (✖ = \u2716) en cada lanzamiento y que cuente el mayor número de cruces seguidas que se ha obtenido en la serie de lanzamientos

Nota: para poder probar el programa con MPTC, el programa debe generar aleatoriamente los caracteres ⚪ o ✖, por ejemplo mediante la función random.choice(["⚪", "✖"])

CRUCES SEGUIDAS
¿Cuántas veces se va a tirar la moneda? 0
¡La moneda se debe tirar al menos dos veces!
CRUCES SEGUIDAS
¿Cuántas veces se va a tirar la moneda? 2
Tirada: ⚪ ⚪
No ha salido ninguna cruz.
CRUCES SEGUIDAS
¿Cuántas veces se va a tirar la moneda? 3
Tirada: ✖ ⚪ ✖
Ha salido alguna cruz, pero no han llegado a salir dos cruces seguidas.
CRUCES SEGUIDAS
¿Cuántas veces se va a tirar la moneda? 20
Tirada: ✖ ✖ ✖ ⚪ ✖ ✖ ⚪ ⚪ ✖ ✖ ✖ ✖ ⚪ ⚪ ✖ ⚪ ✖ ✖ ⚪ ⚪
Se han llegado a obtener 4 cruces seguidas.

Ejercicio 4

Escriba tres programas que generen las siguientes imágenes a partir de las plantillas siguientes:

Ejercicio 4-1
<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="utf-8">
  <title>Ejercicio 4-1. SVG. Examen. Python</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>

<body>
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg"
    width="320" height="320" viewBox="-10 -10 320 320"
    style="border: black 1px solid">
  </svg>
</body>
</html>

Los colores empleados en esta imagen son: black     , white     

Ejercicio 4-2
<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="utf-8">
  <title>Ejercicio 4-2. SVG. Examen. Python</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>

<body>
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg"
    width="320" height="320" viewBox="-160 -160 320 320"
    style="border: black 1px solid">
  </svg>
</body>
</html>

Los colores empleados en esta imagen son: black     , gold     , red     

Ejercicio 4-3
<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="utf-8">
  <title>Ejercicio 4-3. SVG. Examen. Python</title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>

<body>
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg"
    width="320" height="320" viewBox="-10 -10 320 320"
    style="border: black 1px solid">
  </svg>
</body>
</html>

Los colores empleados en esta imagen son: red     , white