Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
indice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:sesion-5 [2025/04/20 11:34] – borrado - editor externo (Fecha desconocida) 127.0.0.1 | indice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:sesion-5 [2025/04/20 11:35] (actual) – upadmin | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
+ | ====== Sesión 5 ====== | ||
+ | ===== Guías ===== | ||
+ | |||
+ | {{ indice: | ||
+ | |||
+ | ===== Resueltos ===== | ||
+ | |||
+ | <file python resueltos_guia_4_2da_parte.py> | ||
+ | #ejercicio 1 | ||
+ | """ | ||
+ | |||
+ | palabra=" | ||
+ | |||
+ | def imprimir_vocales(string): | ||
+ | vocal = "" | ||
+ | for i in string: | ||
+ | if i == " | ||
+ | vocal += i | ||
+ | print(vocal) | ||
+ | |||
+ | imprimir_vocales(palabra) | ||
+ | |||
+ | #ejercicio 2 | ||
+ | """ | ||
+ | |||
+ | palabra=" | ||
+ | |||
+ | # | ||
+ | def invertir_string(string): | ||
+ | string_invertido = string[:: | ||
+ | print(string_invertido) | ||
+ | |||
+ | invertir_string(palabra) | ||
+ | |||
+ | # | ||
+ | def invertir_string_1(string): | ||
+ | lista_invertida = list(reversed(string)) | ||
+ | string_invertido_1 = "" | ||
+ | print(string_invertido_1) | ||
+ | |||
+ | invertir_string_1(palabra) | ||
+ | |||
+ | |||
+ | #ejercicio 3 | ||
+ | """ | ||
+ | segundo, se pide devolver el string habiendo eliminado el substring del mismo. | ||
+ | Ejemplo: | ||
+ | string: “Campeones del Mundo - 2022” | ||
+ | substring: “2022” | ||
+ | Una vez llamada a la función el string nos debería quedar “Campeones del Mundo - ”, notar que solo | ||
+ | borra el año, el espacio no. """ | ||
+ | |||
+ | frase = " | ||
+ | palabra = " | ||
+ | |||
+ | # | ||
+ | def eliminar_substring(string, | ||
+ | # string = string.lower() | ||
+ | # substring = substring.lower() #si hay problemas de comparacion de minusculas y mayusculas podriamos pasar todo a minusculas | ||
+ | if string.count(substring) == 0: | ||
+ | return string | ||
+ | else: | ||
+ | string = string.replace(substring,"" | ||
+ | return string | ||
+ | |||
+ | resultado_string = eliminar_substring(frase, | ||
+ | print(resultado_string) | ||
+ | |||
+ | # | ||
+ | def eliminar_substring_1(string, | ||
+ | # string = string.lower() | ||
+ | # substring = substring.lower() #si hay problemas de comparacion de minusculas y mayusculas podriamos pasar todo a minusculas | ||
+ | if not substring in string: | ||
+ | return string | ||
+ | else: | ||
+ | string = string.replace(substring,"" | ||
+ | return string | ||
+ | |||
+ | resultado_string_1 = eliminar_substring_1(frase, | ||
+ | print(resultado_string_1) | ||
+ | |||
+ | |||
+ | #ejercicio 4 | ||
+ | """ | ||
+ | quiere agregar un ingrediente a la lista si no lo escribió antes, así no tiene repetidos. | ||
+ | Hacer un programa que inserte un nuevo elemento en una lista de strings, solamente si el elemento | ||
+ | que se desea insertar no se encuentra en la lista. La lista de ingredientes la podemos pensar como una | ||
+ | lista de strings. | ||
+ | Ejemplo: | ||
+ | ingredientes: | ||
+ | ingrediente a agregar: “orégano” | ||
+ | La lista de ingredientes debería quedar [“tomate”, | ||
+ | En cambio, si el ingrediente a agregar es “queso” la lista debería quedar igual. """ | ||
+ | |||
+ | lista_supermercado = [" | ||
+ | print(lista_supermercado) | ||
+ | |||
+ | def agregar_a_la_lista(producto_nuevo): | ||
+ | if producto_nuevo not in lista_supermercado: | ||
+ | lista_supermercado.append(producto_nuevo) | ||
+ | |||
+ | agregar_a_la_lista(" | ||
+ | agregar_a_la_lista(" | ||
+ | print(lista_supermercado) | ||
+ | |||
+ | |||
+ | #ejercicio 5 | ||
+ | """ | ||
+ | ordenadas. Esto significa que cada vez que tiene que agarrar una nueva carta, la quiere agregar a su | ||
+ | mano en el lugar indicado para no romper el orden. | ||
+ | Si se tiene una lista de enteros ordenadas de menor a mayor. Hacer una función que según esta lista | ||
+ | inserte un nuevo entero, manteniendo el orden. | ||
+ | Podemos pensar la lista de cartas como números enteros. | ||
+ | Ejemplo: | ||
+ | cartas: [1, 4, 6, 8] | ||
+ | carta nueva: 5 | ||
+ | La lista de cartas debería quedar: [1, 4, 5, 6, 8] | ||
+ | Tratar de pensar una solución sin usar el método sort. (no es obligatorio).""" | ||
+ | |||
+ | lista_cartas = [1, 4, 6, 8] | ||
+ | |||
+ | def insertar_carta(carta, | ||
+ | for i in lista_de_cartas: | ||
+ | if i > carta: | ||
+ | posicion = lista_de_cartas.index(i) | ||
+ | lista_de_cartas.insert(posicion, | ||
+ | break | ||
+ | if carta > max(lista_cartas): | ||
+ | lista_de_cartas.append(carta) | ||
+ | | ||
+ | |||
+ | insertar_carta(5, | ||
+ | |||
+ | print(lista_cartas) | ||
+ | |||
+ | |||
+ | #ejercicio 6 | ||
+ | """ | ||
+ | de gustos diferentes que tiene que pedir. | ||
+ | Podemos pensar la lista de empanadas como una lista de strings, entonces deberíamos devolver la | ||
+ | cantidad de strings diferentes que hay en una lista. """ | ||
+ | |||
+ | lista_empanadas = [" | ||
+ | |||
+ | def cantidad_de_gustos(pedido): | ||
+ | lista_de_gustos = [] | ||
+ | for i in pedido: | ||
+ | if i not in lista_de_gustos: | ||
+ | lista_de_gustos.append(i) | ||
+ | cantidad_de_gustos = len(lista_de_gustos) | ||
+ | print(" | ||
+ | print(" | ||
+ | |||
+ | cantidad_de_gustos(lista_empanadas) | ||
+ | |||
+ | #ejercicio 7 | ||
+ | """ | ||
+ | Decidieron dividirse las tareas, a Manuel le tocó hacer todas las actividades con número par, por eso | ||
+ | necesitamos hacer una función que reciba una lista de enteros, y devuelva otra lista que solamente | ||
+ | contenga números pares, que vienen a ser las tareas de Manuel. """ | ||
+ | |||
+ | # | ||
+ | lista_numeros = [1, | ||
+ | |||
+ | lista_pares = [] | ||
+ | |||
+ | def dejar_numeros_pares(lista): | ||
+ | for i in lista: | ||
+ | if i % 2 == 0 and not i in lista_pares: | ||
+ | lista_pares.append(i) | ||
+ | | ||
+ | dejar_numeros_pares(lista_numeros) | ||
+ | |||
+ | print(lista_pares) | ||
+ | |||
+ | # | ||
+ | lista_numeros_1 = [1, | ||
+ | |||
+ | lista_pares_1 = [] | ||
+ | |||
+ | def es_par(numero): | ||
+ | if numero % 2 == 0: | ||
+ | return True | ||
+ | else: | ||
+ | return False | ||
+ | | ||
+ | def dejar_numeros_pares(lista): | ||
+ | for i in lista: | ||
+ | if es_par(i) and not i in lista_pares_1: | ||
+ | lista_pares_1.append(i) | ||
+ | | ||
+ | dejar_numeros_pares(lista_numeros_1) | ||
+ | |||
+ | print(lista_pares_1) | ||
+ | |||
+ | # | ||
+ | lista_numeros_2 = [1, | ||
+ | |||
+ | def es_par(numero): | ||
+ | if numero % 2 == 0: | ||
+ | return True | ||
+ | else: | ||
+ | return False | ||
+ | | ||
+ | lista_pares_2 = list(filter(es_par, | ||
+ | print(lista_pares_2) | ||
+ | |||
+ | |||
+ | #ejercicio 8 y 9 | ||
+ | """ | ||
+ | tupla y guarda en ella a todos los que quiere invitar. | ||
+ | |||
+ | 8. Si alguien cancela tienen que sacarlo de la tupla. | ||
+ | Hacer una función que reciba la tupla y un nombre, y devuelva una nueva tupla sin el nombre pasado | ||
+ | por parámetro. | ||
+ | Las tuplas son inmutables, entonces ¿Cómo podemos hacer para “eliminar” un elemento de una tupla? | ||
+ | Recordemos que las tuplas tienen definido el operador +, pero no el operador -. | ||
+ | |||
+ | 9. Cuando ya tienen a todos los invitados tienen que juntar sus tuplas, para eso se necesita una función | ||
+ | que a partir de dos tuplas cree una sola que sea la combinación de ambas tuplas. """ | ||
+ | |||
+ | #ejercicio 8 | ||
+ | |||
+ | invitados_novia = (" | ||
+ | invitados_novio = (" | ||
+ | |||
+ | def sacar_invitado(tupla, | ||
+ | lista_invitados_original = list(tupla) | ||
+ | lista_invitados_nueva = [] | ||
+ | for i in lista_invitados_original: | ||
+ | if i != eliminado: | ||
+ | lista_invitados_nueva.append(i) | ||
+ | tupla = tuple(lista_invitados_nueva) | ||
+ | return tupla | ||
+ | |||
+ | invitados_novia_nueva = sacar_invitado(invitados_novia," | ||
+ | print(invitados_novia_nueva) | ||
+ | |||
+ | invitados_novio_nueva = sacar_invitado(invitados_novio," | ||
+ | print(invitados_novio_nueva) | ||
+ | |||
+ | #ejercicio 9 | ||
+ | |||
+ | def unir_tuplas_de_invitados(tupla_1, | ||
+ | tupla = tupla_1 + tupla_2 | ||
+ | return tupla | ||
+ | |||
+ | invitados_definitiva = unir_tuplas_de_invitados(invitados_novia_nueva, | ||
+ | print(invitados_definitiva) | ||
+ | |||
+ | </ |