Ejercicio 8.7.1. Escribir una función que reciba una lista desordenada y un elemento, que:

  1. Busque todos los elementos coincidan con el pasado por parámetro y devuelva la cantidad de coincidencias encontradas.
  2. Busque la primera coincidencia del elemento en la lista y devuelva su posición.
  3. Utilizando la función anterior, busque todos los elementos coincidan con el pasado por parámetro y devuelva una lista con las posiciones.

Ejercicio 8.7.2. Escribir una función que reciba una lista de números no ordenada, que:

  1. Devuelva el valor máximo.
  2. Devuelva una tupla que incluya el valor máximo y su posición.
  3. ¿Qué sucede si los elementos son cadenas de caracteres? Nota: no utilizar lista.sort()

Ejercicio 8.7.3. Agenda simplificada

Escribir una función que reciba una cadena a buscar y una lista de tuplas (nombre_completo, telefono), y busque dentro de la lista, todas las entradas que contengan en el nombre completo la cadena recibida (puede ser el nombre, el apellido o sólo una parte de cualquiera de ellos). Debe devolver una lista con todas las tuplas encontradas.

Ejercicio 8.7.4. Sistema de facturación simplificado

Se cuenta con una lista ordenada de productos, en la que uno consiste en una tupla de (identificador, descripción, precio), y una lista de los productos a facturar, en la que cada uno consiste en una tupla de (identificador, cantidad).

Se desea generar una factura que incluya la cantidad, la descripción, el precio unitario y el precio total de cada producto comprado, y al final imprima el total general.

Escribir una función que reciba ambas listas e imprima por pantalla la factura solicitada.

Ejercicio 8.7.5. Escribir una función que reciba una lista ordenada y un elemento, si el elemento se encuentra en la lista, debe encontrar su posición, mediante búsqueda binaria y devolverlo. Si no se encuentra, debe agregarlo a la lista en la posición correcta y devolver esa nueva posición. (No utilizar lista.sort())


Copyright (c) 2011-2014 Rosita Wachenchauzer, Margarita Manterola, Maximiliano Curia, Marcos Medrano, Nicolás Paez. La copia y redistribución de esta página se permite bajo los términos de la licencia Creative Commons Atribución - Compartir Obras Derivadas Igual 3.0 siempre que se conserve esta nota de copyright.