diff --git a/ejercicio1.ipynb b/ejercicio1.ipynb index 6ce4da0f2d580a6902e748cc646243267922f138..5bb630ff84687fc27c63b6ee9167c47d4f675ddc 100644 --- a/ejercicio1.ipynb +++ b/ejercicio1.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "*Mi nombre es Jesus David Bermudez Sanchez, soy estudiante de la Maestria en Fisica de la Universidad Nacional de Colombia, Sede Bogotá*\n", + "# *Mi nombre es Jesus David Bermudez Sanchez, soy estudiante de la Maestria en Fisica de la Universidad Nacional de Colombia, Sede Bogotá*\n", "\n", "---" ] @@ -13,7 +13,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# El problema a resolver es el siguiente\n", + "## El problema a resolver es el siguiente\n", "\n", "## Lista de palabras\n", "\n", @@ -33,6 +33,8 @@ "source": [ "Iniciamos pidiendo al usuario una lista de palabras conectadas con guiones. (Esperamos que el usuario **NO** introduzca espacios en blanco). \n", "\n", + "Por ejemplo, puede ingresar: ``naranja-avión-melodÃa-tupla-avión``\n", + "\n", "Para ello usamos el comando `input()`, el cual permite pedir al usuario información a traves de la pantalla; esta informacion se guarda en una variable de tipo \"string\".\n", "\n", "En nuestro caso llamamos a esta variable `palabras`. A esta variable le agregamos un guion en el extremo derecho. El porque de esta accion se expondra mas adelante." @@ -40,30 +42,38 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdin", "output_type": "stream", "text": [ - "Ingrese una lista de palabras separadas por guiones sin dejar epacios; se retornaran las palabras ordenadas alfabeticamente y sin repeticiones naranja-mango-perro-pera-casa-avion-perro\n" + "Ingrese una lista de palabras separadas\n", + "por guiones sin dejar epacios; \n", + "se retornaran las palabras ordenadas \n", + "alfabeticamente y sin repeticiones\n", + "\n", + " naranja-avión-melodÃa-tupla-avión\n" ] } ], "source": [ - "palabras=input(\n", - " \"Ingrese una lista de palabras separadas por guiones sin dejar epacios; \\\n", - " se retornaran las palabras ordenadas alfabeticamente y sin repeticiones\")\n", + "palabras=input(\"\"\"Ingrese una lista de palabras separadas\n", + "por guiones sin dejar epacios; \n", + "se retornaran las palabras ordenadas \n", + "alfabeticamente y sin repeticiones\n", + "\n", + "\"\"\")\n", "\n", "# Le agrego un guion al final del string original(para que funcione el \n", "# proceso que me invente)\n", - "palabras=palabras+\"-\"" + "palabras=palabras+\"-\" " ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -97,18 +107,12 @@ "name": "stdout", "output_type": "stream", "text": [ - "Lista que contiene las palabras ingresadas sin guiones: ['naranja', 'mango', 'perro', 'pera', 'casa', 'avion', 'perro']\n" + "Lista que contiene las palabras ingresadas sin guiones:\n", + "['naranja', 'avión', 'melodÃa', 'tupla', 'avión', 'naranja', 'avión', 'melodÃa', 'tupla', 'avión', 'naranja', 'avión', 'melodÃa', 'tupla', 'avión', 'naranja', 'avión', 'melodÃa', 'tupla', 'avión']\n" ] } ], "source": [ - "#--------------------------------------------------------------\n", - "# Aqui ensaye como quitarle el ultimo caracter a un string\n", - "#prueba=\"cacaroto\"\n", - "#print(prueba[:-1])\n", - "#---------------------------------------------------------------\n", - "\n", - "\n", "contador=\"\"\n", "for x in palabras:\n", " contador=contador+x\n", @@ -118,7 +122,8 @@ " contador=\"\"\n", "\n", "# lista_de_palabras es una lista que contiene las palabras del string original.\n", - "# print(\"Lista que contiene las palabras ingresadas sin guiones: \",lista_de_palabras)" + "print(\"Lista que contiene las palabras ingresadas sin guiones:\")\n", + "print(lista_de_palabras)" ] }, { @@ -132,27 +137,29 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "set de palabras ingresadas sin repetir {'naranja', 'perro', 'mango', 'avion', 'pera', 'casa'}\n" + "conjunto con las palabras ingresadas sin repetir\n", + "{'tupla', 'naranja', 'melodÃa', 'avión'}\n" ] } ], "source": [ "set_palabras_sin_repetir=set(lista_de_palabras)\n", - "print(\"set de palabras ingresadas sin repetir \",set_palabras_sin_repetir)" + "print(\"conjunto con las palabras ingresadas sin repetir\")\n", + "print(set_palabras_sin_repetir)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Ordanacion alafabetica\n", + "## Ordenacion alafabetica\n", "\n", "+ La estructura de _conjunto_ no nos permite hacer un ordenamiento alfabetico; para ello debemos volver a las listas, las cuales tienen el metodo ``.sort()``. \n", "\n", @@ -163,15 +170,29 @@ "cell_type": "code", "execution_count": 11, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "lista de palabras ingresadas sin repetir\n", + "['tupla', 'naranja', 'melodÃa', 'avión']\n", + "\n", + "lista de palabras ingresadas sin repetir, ordenadas alfabeticamente\n", + "['avión', 'melodÃa', 'naranja', 'tupla']\n" + ] + } + ], "source": [ "list_palabras_sin_repetir=list(set_palabras_sin_repetir)\n", - "# print(\"lista de palabras ingresadas sin repetir \",list_palabras_sin_repetir)\n", + "print(\"lista de palabras ingresadas sin repetir\")\n", + "print(list_palabras_sin_repetir)\n", + "print(\"\")\n", "\n", "# Ordenamos las palabras alfabeticamente\n", "list_palabras_sin_repetir.sort()\n", - "# print(\"lista de palabras ingresadas sin repetir, ordenadas alfabeticamente \",list_palabras_sin_repetir)\n", - "# Hacemos el string final uniendo los elementos de list_palabras_sin_repetir" + "print(\"lista de palabras ingresadas sin repetir, ordenadas alfabeticamente\")\n", + "print(list_palabras_sin_repetir)" ] }, { @@ -198,37 +219,48 @@ "name": "stdout", "output_type": "stream", "text": [ - " \n", - " \n", + "\n", "A continuación se muestra un string de las palabras ingresadas,\n", "sin repeticion, y ordenadas alfabeticamente, separadas por guiones\n", - "avion-casa-mango-naranja-pera-perro\n" + "\n", + " \n", + "avión-melodÃa-naranja-tupla\n" ] } ], "source": [ + "# Hacemos el string final uniendo los elementos de list_palabras_sin_repetir\n", "semi_final_string=\"\"\n", "for a in list_palabras_sin_repetir:\n", " semi_final_string=semi_final_string+\"-\"+a\n", "\n", "# Me toca hacerlo asi porque el semi_final_string tiene un \"-\" en la posicion 0.\n", "final_string=semi_final_string[1:]\n", + "\n", + "print(\"\"\"\n", + "A continuación se muestra un string de las palabras ingresadas,\n", + "sin repeticion, y ordenadas alfabeticamente, separadas por guiones\n", + "\"\"\")\n", "print(\" \")\n", - "print(\" \")\n", - "print(\"A continuación se muestra un string de las palabras ingresadas,\")\n", - "print(\"sin repeticion, y ordenadas alfabeticamente, separadas por guiones\")\n", - "# Me toca imprimirlo usando [1:] porque el final_string tiene un \"-\" en la posicion 0.\n", - "print(final_string)\n", "\n", - "# naranja-avión-melodÃa-tupla-avión" + "print(final_string)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Bibliografia: https://www.geeksforgeeks.org/python-convert-set-into-a-list/" + "Bibliografia Utilizada:\n", + "\n", + "https://careerkarma.com/blog/python-syntaxerror-eol-while-scanning-string-literal/https://www.geeksforgeeks.org/python-convert-set-into-a-list/" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": {