Ejercicios

Algunos de estos ejercicios son similares o son variantes de los incluidos en el libro «Introducción a la programación» de Andrés Marzal e Isabel Gracia de la Universitat Jaume I.

  1. Evalúa el polinomio $y = x^4 + x^3 + \frac{1}{2}x^2 - x$ para $x = 10$
  2. Escribe un fragmento de código Python que demuestre la utilidad de la función abs().
  3. Escribe un fragmento de código Python que demuestre la utilidad de la función round().
  4. Crea una función que calcule el área de un círculo.
  5. Crea una función que dado un valor flotante en el intervalo [0, 10] devuelva una cadena indicando si es "suspenso", "suficiente", "notable" o "sobresaliente".
  6. Crea una versión iterativa de la función factorial().
  7. Crea una función que devuelva una cadena con el nombre del número indicado por parámetro: 32 -> "treinta y dos".

cadenas

  1. Crea una función que determine si una cadena contiene letras mayúsculas.
  2. Crea una función que tome una lista de cadenas y devuelva la menor (la alfabéticamente inferior).
  3. Crea una función que, dado un carácter, indique si es una vocal o consonante, si es minúsucla o mayúscula o si es un símbolo de puntuación. Después crea otra función que tome una cadena y que usando la primera devuelva un diccionario de conjuntos para cada tipo.
  4. Crea una función que invierta una cadena.
  5. Crea una función que cuente el número de ocurrencias de un carácter dada en una cadena.
  6. Crea una función que devuelva el número de letras mayúscula que contiene una cadena pasada como parámetro.
  7. Crea uan función que dada una cadena devuelva una lista con todos los números que aparecen: "Est3 text0 solo c0ntiene el número 24" => [24]
  8. Crea una función que determine si una cadena es un identificador de variable Python válido.
  9. Crea una función que determine si una cadena contiene paréntesis bien balanceados.
  10. Crea una función que determine si una cadena contiene paréntesis, llaves y corchetes bien balanceados.
  11. Crea una función que determine si una palabra es alfabética (sus letras están en orden alfabético).
  12. Crea una función que indique si una cadena es o no un palíndromo.
  13. Crea una función que determine si una frase es palíndroma.
  14. Crea una función que aplique el cifrado César con desplazamiento k a la cadena indicada.
  15. Crea una función que determine si una cadena es subcadena de otra.
  16. Crea una función que dada una cadena y un entero k devuelva una lista con todas las subcadenas de tamaño k.
  17. Crea una función que dadas dos cadenas retorne la subcadena común más larga.

listas

  1. Crea una lista con los números del 0 al 10. Crea una lista de cadenas con sus nombres. A partir de ellas, crea una lista de tuplas con las correspondencias: [(0, "cero"), (1, "uno"), ...]
  2. Crea una función que calcule la media de una lista de enteros de cualquier tamaño.
  3. Crea una función que calcule la varianza de una lista de números:$$\sigma^2 = \frac{\sum_{i=1}^{n}(x_{i} - \overline{x})^2}{n}$$
  4. Crea una función que dada una lista de tuplas que expresan puntos en un plano y un punto de referencia, devuelva el punto de la lista más cercano al de referencia: $$\sqrt{(x_1 - x_2)^2 + (y_1 - y_2)^2}$$
  5. Crea una función que dada una lista de números y un valor de referencia, devuelva el valor de la lista más cercano al de referencia.
  6. Crea una función que dada una lista de números, devuelva otra que contiene el cuadrado de cada uno de los elementos de la primera.
  7. Crea una función que dada una lista de números, la modifique substituyendo cada elemento por su cuadrado.
  8. Crea una función que, a partir de una lista de valores, devuelve una lista con todas las combinaciones con repeción de dichos valores: [1, 3, 6] => [[1, 1, 1], [1, 1, 3], [1, 1, 6], [1, 3, 1] ... ]

diccionarios

  1. A partir de un diccionario cuyas claves son nombres y cuyos valores son calificaciones, escribe funciones para:
    • Obtener un diccionario que indica la cantidad de suspensos, suficientes, notables y sobresalientes.
    • Obtener los nombres de los alumnos que han aprobado.
    • Obtener el alumno que ha obtenido la nota más alta: nombre y nota.
  2. Crea una función que dada una precio (en euros) devuelva un diccionario que indique la cantidad mínima de billetes y monedas de cada tipo necesarios. Utilice esa función para mostrarlo de forma textual. 347 => {200: 1, 100: 1, 20: 2, 5: 1, 2: 1}

bucles

  1. Crea una función que imprina la tabla de multiplicar del entero pasado por argumento.
  2. Crea una función que dados dos números n y m, devuelva $\sum_{i=n}^{m}i^2$
  3. Crea una función que genere todas las secuencias de letras minúsculas de 6 letras.
  4. Crea una función que dado un entero devuelva una cadena con la representación en binario equivalente.
  5. Crea una función que dado una cadena que representa un número binario devuelve el entero equivalente.

ficheros

  1. Crea una función que devuelva el número de carácteres, palabras y líneas que contiene un fichero dado su descriptor.
  2. Crea una función que dado un fichero de texto genere otro en el que se han eliminado todas las palabras con más de k caracteres.

In [ ]: