{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Tema 04: Colecciones de datos (Enunciados)\n", "*Nota: Estos ejercicios son optativos para hacer al final de la unidad y están pensados para apoyar tu aprendizaje*." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**1) Realiza un programa que siga las siguientes instrucciones:**\n", "* Crea un conjunto llamado usuarios con los usuarios Marta, David, Elvira, Juan y Marcos\n", "* Crea un conjunto llamado administradores con los administradores Juan y Marta.\n", "* Borra al administrador Juan del conjunto de administradores.\n", "* Añade a Marcos como un nuevo administrador, pero no lo borres del conjunto de usuarios.\n", "* Muestra todos los usuarios por pantalla de forma dinámica, además debes indicar cada usuario es administrador o no.\n", "\n", "*Notas: Los conjuntos se pueden recorrer dinámicamente utilizando el bucle for de forma similar a una lista. También cuentan con un método llamado **.discard(elemento)** que sirve para borrar un elemento.* " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Completa el ejercicio aquí\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**2) Durante el desarrollo de un pequeño videojuego se te encarga configurar y balancear cada clase de personaje jugable. Partiendo que la estadística base es 2, debes cumplir las siguientes condiciones: **\n", "* El caballero tiene el doble de vida y defensa que un guerrero.\n", "* El guerrero tiene el doble de ataque y alcance que un caballero.\n", "* El arquero tiene la misma vida y ataque que un guerrero, pero la mitad de su defensa y el doble de su alcance.\n", "* Muestra como quedan las propiedades de los tres personajes." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "caballero = { 'vida':2, 'ataque':2, 'defensa': 2, 'alcance':2 }\n", "guerrero = { 'vida':2, 'ataque':2, 'defensa': 2, 'alcance':2 }\n", "arquero = { 'vida':2, 'ataque':2, 'defensa': 2, 'alcance':2 }\n", "\n", "# Completa el ejercicio aquí\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**3) Durante la planificación de un proyecto se han acordado una lista de tareas. Para cada una de estas tareas se ha asignado un orden de prioridad (cuanto menor es el número de orden, más prioridad).**\n", "\n", "**¿Eres capaz de crear una estructura del tipo cola con todas las tareas ordenadas pero sin los números de orden?**\n", "\n", "Pista: Para ordenar automáticamente una lista es posible utilizar el método .sort()." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==Tareas desordenadas==\n", "6 Distribución\n", "2 Diseño\n", "1 Concepción\n", "7 Mantenimiento\n", "4 Producción\n", "3 Planificación\n", "5 Pruebas\n" ] } ], "source": [ "tareas = [ \n", " [6, 'Distribución'],\n", " [2, 'Diseño'],\n", " [1, 'Concepción'],\n", " [7, 'Mantenimiento'],\n", " [4, 'Producción'],\n", " [3, 'Planificación'],\n", " [5, 'Pruebas']\n", "]\n", "\n", "print(\"==Tareas desordenadas==\")\n", "for tarea in tareas:\n", " print(tarea[0], tarea[1])\n", "\n", "# Completa el ejercicio aquí\n" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [default]", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.2" } }, "nbformat": 4, "nbformat_minor": 0 }