diff --git a/Ejercicio2.ipynb b/Ejercicio2.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..e588a25cde502e468f75d7d80aeea55bbeac8c72 --- /dev/null +++ b/Ejercicio2.ipynb @@ -0,0 +1,131 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<div style=\"text-align: center\">\n", + "Carlos Andres Pinzon Osorio \n", + " <div/>\n", + " <div style=\"text-align: center\">\n", + "Maestria en Ingenieria Fisica \n", + " <div/>\n", + " <div style=\"text-align: center\">\n", + "Universidad Antonio Nariño\n", + " <div/>\n", + "**Tarea clase 2 - Modulo de ciencia de datos**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Ejercicio 2\n", + "\n", + "-Escriba una rutina en python que reciba como entrada un número entero, n, e imprima los\n", + "números en la n-ésima fila del triángulo de Pascal. El programa debe verificar si el número\n", + "n es entero, o arrojar un mensaje informando que ha habido un error del usuario en caso\n", + "contrario.\n", + "\n", + "\n", + "-Modifique la rutina anterior para que reciba un número variable de argumentos: n1, n2, n3,…\n", + "y retorne una lista cuyo primer elemento es una lista conteniendo los números en la fila n1\n", + "del triángulo de Pascal, el segundo elemento una lista con los números en la fila n2, y asÃ\n", + "sucesivamente.\n", + "\n", + "\n", + "\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "La idea del problema es que desde el teclado se introduzca un numero de filas \"n\" tal que el programa sea capaz de mostrar hasta esa fila en el triangulo de Pascal, la fila del triangulo de Pascal obedece al doble de la suma del anterior de tal manera que se tienen resultados 1,2,4,8,16,32,64, etc. Finalmente se imprimen los numeros que componen cada fila." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Lo primero que se hace es crear un input n, que determina el numero de filas.\n", + "\n", + "n=int(input(\"Introduzca un numero entero n de filas:\"))\n", + "\n", + "y se crean dos elementos de caracter lista con el fin de ir guardando..\n", + "\n", + "fila=[1]\n", + "\n", + "vacio=[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finalmente se establece un ciclo for que recorrera y almacenara en cada una de las listas tanto fila como vacia los valores hasta los cuales va la iteracion de tal manera que finalmente se imprima todo lo que esta en la lista fila.\n", + "\n", + "for i in range(n):\n", + "\n", + " print(fila)\n", + " \n", + " fila=[i+d for i,d in zip(fila+vacio,vacio+fila)]" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Triangulo de Pascal\n", + "\n", + "Introduzca un numero entero n de filas:3\n", + "[1]\n", + "[1, 1]\n", + "[1, 2, 1]\n" + ] + } + ], + "source": [ + "print(\"Triangulo de Pascal\")\n", + "print()\n", + "\n", + "n=int(input(\"Introduzca un numero entero n de filas:\"))\n", + "\n", + "fila=[1]\n", + "vacio=[0]\n", + "\n", + "for i in range(n):\n", + " print(fila)\n", + " \n", + " fila=[i+d for i,d in zip(fila+vacio,vacio+fila)]" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}