¡Descarga Guia programacion python UAI Adepti y más Ejercicios en PDF de Programación Informática solo en Docsity!
Estudiaton Programación P
Guia de ejercicios
@AdeptiUAI
Instructivo
A continuación se detallara el formato a realizar para efectos de la primera estudiaron 2021 en el marco de la prueba 1 del ramo programación (Tics 100). Se espera que los alumnos ingresen a la sesión de zoom dispuesta para la estudiaton donde se les solicitará a quienes se inscribieron con grupos de estudio conformados utilicen el formato (“Nombre_grupo” - “Nombre_integrante”) como nombre en la plataforma, esto con el fin de facilitar la asignación de las BreakOut Rooms de cada grupo de estudio. Para efectos del desarrollo de la guía se espera que los alumnos desarrollen un trabajo colaborativo sobre los ejercicios que aquí se presentan durante las primeras dos horas de la estudiaron. Durante este período ustedes podrán solicitar asistencia de un tutor por medio de la plataforma zoom quienes se encontraran en la sala principal de la reunión. A su vez los tutores pasarán por cada una de las salas revisando el estado de avance y resolviendo dudas. Posteriormente se pasarán todos los alumnos a la sala principal y se cerrarán las BreakOut Rooms para proceder con la resolución de la guia la cual se hará por streaming por uno de los tutores. Luego de esto se les adjuntará la pauta de la guía con sus soluciones. Por cualquier duda, consulta y/o problema favor contactarnos por instagram (@adeptiuai), adicionalmente vamos a hacer actualizaciones con información durante el desarrollo de la estudiaton a nuestro instagram. A continuación podrán acceder a los ejercicios de la Guia 1.
- Cree un programa que imprima la siguiente figura, de acuerdo al número de niveles ingresado por el usuario. Ejercicios de Código: Realice los siguientes ejercicios utilizando Python 3
- Sheldon, Leonard, Penny, Rajesh y Howard están en una fila esperando en una máquina dispensadora por una "ColaCoca", no hay más personas en la fila. El primero en la fila (Sheldon) puede comprar una bebida, tomarla y se duplica! Como resultado los dos nuevos Sheldon's se van al final de la fila. El siguiente en la fila (Leonard) compra una bebida, se la toma y se va al final de la fila como dos Leonards, y así sucesivamente. Este proceso continúa hasta el infinito y más allá. Por ejemplo, Penny toma la tercera lata de bebida y la fila se muestra como; Rajesh Howard Sheldon Sheldon Leonard Leonard Penny Penny Escriba un algoritmo utilizando Python 3 que imprima el nombre de la persona que tomará la n-ésima lata de bebida. Note que la fila inicial sigue la distribución; Sheldon Leonard Penny Rajesh Horward Donde la primera persona es Sheldon El input de este programa consiste en datas integrales simples n donde (1<= n <=10^9) Se garantiza la escritura de los nombres considerando que las respuestas de salida son las posibles presentadas Respecto a la salida se espera que el programa imprima una línea única con el nombre de la persona que toma la n-ésima lata de bebida, ya sea, "Sheldon", "Leonard", "Penny", "Rajesh", "Howard" (sin comillas) considerando el orden de inicio dado
- La pequeña Lucia está aprendiendo como decrecer un número por uno, pero se equivoca con números de dos o más dígitos. Lucia sustrae uno de un número siguiendo el algoritmo: Si el último dígito del número no es cero, entonces ella sustrae uno del número. Si el último dígito del número es cero, ella lo divide por 10, removiendo el último dígito A usted le dan un número entero n. Lucia sustrae de ese número uno, a veces. Su tarea es imprimir el resultado despues de k sustracciones Se garantiza que el resultado será un número entero positivo El input al código consta de dos números enteros n , k (2<= n <=10^9, 1<= k <=50) Donde n es el primero número y k es la cantidad de veces a las cuales Lucia sustraera uno. El output debe imprimir un número entero resultado de decrecer n una cantidad k de veces, se garantiza que este output será un entero positivo Un ejemplo de la secuencia para n=512 y k=4 es 512 -> 511 -> 510 -> 51 -> 50
- Se le da un tablero rectangular de medidas M x N unidades cuadradas. También se le da un número ilimitado de piezas estándar de dominio de 2x1 unidades cuadradas. Usted tiene permitido rotar las piezas. Se le pide que que posicione la mayor cantidad de piezas de dominó posibles en el tablero cumpliendo las siguientes restricciones. Cada pieza de dominó tiene que cubrir completamente las 2x1 unidades cuadradas No pueden existir domino's uno encima del otro Cada dominio debe estar contenido en su totalidad en el tablero, puede tocar los bordes pero no salir. Encuentre la máxima cantidad de piezas de dominó que se pueden poner cumpliendo estas condiciones. Input, se le van a dar dos números enteros M y N para el tamaño del tablero (1<= M <= N <=16) El output debe contener el número máximo de dominoes que se pueden ubicar.
- Un panda decide visitar a su amigo, resulta que la casa del panda está ubicada en el punto 0, y la casa de su amigo se ubica en un punto x (x>0)de coordenadas lineales. Con cada paso el panda puede moverse 1,2,3,4 o 5 unidades hacia adelante. Determine cuál es la cantidad mínima de pasos que el panda debe realizar para llegar a la casa de su amigo sin pasarse. El input cuenta de un número entero positivo X (1<= x <=1000000) que son las coordenadas lineales de la casa del amigo del panda. El output debe incluir el número mínimo de pasos que debe realizar el panda para llegar del punto 0 al punto X
- Escriba un programa que reciba un número n , y que luego pida n palabras. Al final del programa debe decir cual es la palabra más larga ingresada y la más corta.
- Dígito verificador del RUT - Rol único tributario, conocido también por el acrónimo RUT, es un número único implantado en Chile, que fue establecido como identificación tributaria. El RUT consta de dos partes: el número y el dígito verificador separados por un guión. El último se calcula a partir del número. Es calculado con un algoritmo: a) Tome los números de su rut, por ejemplo 30.686.957-X y leanlos de derecha a izquierda. ( 7 5 9 6 8 6 0 3 ). b) Tome los números y multiplique cada uno por la serie: 2, 3, 4, 5, 6, 7, 2, 3… si se acaban comience de nuevo de 2. 7x2=14 5x3=15 9x4=36 6x5=30 … 3x3= c) Sume los resultados obtenidos y obtenga el resto de la división por 11 14+15+36+30+48+42+0+9=194 194:11=27 resto: 7 d) Calcule la diferencia entre el número 11 y el resto obtenido 11-7= e) Ahora analizando el número obtenido hay tres posibilidades:
- si el número obtenido es 11, el dígito verificador es 0
- si el número obtenido es 10 el dígito verificador es K
- en cualquier otro caso, el número obtenido es el dígito verificador En el caso del ejemplo, el dígito verificador del número 30686957 es 4. Desarrolle un programa que solicite al usuario un número y devuelva el dígito verificador
Desafíos: Utilización de listas, no se compliquen
- [HardCore] Haga un estimador de pi en función a n iteraciones utilizando únicamente la librería Random
- [Sencillo] Desarrolle un algoritmo que calcule el n-esimo dígito de la secuencia de fibonacci además de la secuencia hasta ese n-esimo dígito.
- [Sencillo] Desarrolle un código que ordene de menor a mayor una lista de números enteros
- [Sencillo] Hacer un código que pida un número de elementos para una lista y que luego vaya guardando elementos para esa lista para finalmente imprimir la lista en su totalidad