Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El coeficiente de Jaccard es usado para medir el factor de similitud entre dos textos
en términos de la intersección y la unión de ambos textos. Se le pide elaborar un algo-
ritmo que reciba como datos de entrada dos textos A y B, y luego proceder a calcular
lo siguiente:
• |A ∩ B|: la cantidad de palabras coincidentes en ambos textos.
• |A ∪ B|: la cantidad de palabras en ambos textos (sin repeticiones).
• Finalmente, obtener el factor de similitud aplicando el coeficiente de Jaccard :
|A ∩ B|/|A ∪ B|
Diseñe e implemente un algoritmo para validar una contraseña considerando las sigu-
ientes reglas:
• Debe tener al menos 5 caracteres
• Debe contener al menos un dı́gito.
• Debe contener al menos tres letras mayúsculas.
Si la clave ingresada cumple el formato debe mostrar el mensaje OK, caso contrario debe
mostrar ERROR.
Diseñe e implemente un algoritmo que permita invertir el orden del string por pal-
abras. Adicionalmente, deberá intercalar las palabras en mayusculas y minusculas.
Considere que el resultado deberá ser almacenado en un nuevo string (no print).
Algunos ejemplos de diálogo de este programa serı́an:
Listing 2: Ejemplo 1
esta vez estudie sacare veinte
VEINTE sacare ESTUDIE vez ESTA
Listing 3: Ejemplo 2
Al que madruga Dios lo ayuda
AYUDA lo DIOS madruga QUE al
4. Contraseña - str
Puedes usar la función randint(a, b) del módulo random, la cual genera un número aleato-
rio entre a y b incluidos. Para verificar si un caracter es un numero o letra puedes usar las
funciones str.isdigit() y str.isalpha(). Por ejemplo, ”2”.isDigit() = True y ”a”.isAlpha()
= True.
Algunos ejemplos de diálogo de este programa serı́an:
Listing 4: Ejemplo 1
Ingrese su contrasena : 12
La contrasena no es valida : Contrasena tiene menos de 2
letras .
Listing 5: Ejemplo 2
Ingrese su contrasena : aa
La contrasena no es valida : Contrasena tiene menos de 2
digitos .
Listing 6: Ejemplo 3
Ingrese su contrasena : hola123
Su contrasena es valida . Su contrasena mejorada es :
hoLa$123 #
Listing 7: Ejemplo 4
Ingrese su contrasena : hola123
Su contrasena es valida . Su contrasena mejorada es : h % oLa12
%3
Listing 8: Ejemplo 4
Ingrese su contrasena : hola123
Su contrasena es valida . Su contrasena mejorada es : Hola@1
%23
Desarrolle un programa, que permita leer dos números enteros positivos diferentes y
el programa indique si los números son números amigos.
Dos números enteros positivos son amigos: si la suma de los divisores propios
de uno es igual al otro número y visceversa. El 1 es considerado divisor propio,
pero el número mismo no lo es.
Por ejemplo:
Prog-I Ejercicios: Str, funciones y listas - Página 4 de 12 2021-2
Los divisores propios de 220 son 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 y 110, que suman
284
Los divisores propios de 284 son 1, 2, 4, 71 y 142, que suman 220.
Por tanto el 284 y el 220 son números amigos.
El programa:
Numero 1: 156
Numero 2: 156
Numero 1: 17296
Numero 2: 18416
17296 y 18416 son numeros amigos
Desarrolle un programa que permita leer como dato una cadena en donde se ha dele-
treado un número utilizando los nombres de cada uno de sus dı́gitos y el programa forme
e imprima el número correspondiente.
El programa:
• Lee como dato una cadena
• Forma un número entero y lo imprime.
• El programa deberá tener por lo menos una función llamada aNumero que:
recibe como parámetro la cadena y devuelve un número entero.
• De no escribir esta función, no se asignará el puntaje a esta pregunta.
Algunos ejemplos de diálogo de este programa serı́an:
Listing 13: Ejemplo 1
Cadena : dos tres seis siete nueve cero
El numero es : 236790
Implementar la función SplitList que reciba como parámetros una lista de datos y
un elemento separador. Dicho separador será utilizado para dividir la lista en sublistas.
# Funcion
def SplitList ( lista , sep ) :
result = [ ]
# implemente aqui
return result
# ## MAIN ###
lista = [8 ,3 , -1 ,4 ,3 ,10]
separador = -1
resultado = Split ( lista , separador )
print ( resultado ) # [[8 ,3] , [4 ,3 ,10]]
# ## MAIN ###
lista = [8 ,3 ,4 ,3 ,10]
separador = -1
resultado = Split ( lista , separador )
print ( resultado ) # [8 ,3 ,4 ,3 ,10]
8. Saludos - funciones
Implemente la funcion emite saludo, de tal manera que las siguientes lı́neas de codigo
generen las salidas especificadas.
Listing 16: Ejemplo 1
# output
Estimado Pedro , buenos dias
Estimada Juana , buenos dias
Estimado Pedro , buenas tardes
Estimada Cristina , buenos dias
9. Cálculos - funciones
Finalmente, implementar la función calcularCilindro que hace uso de las funciones an-
teriores y funciona de la siguiente manera:
Listing 17: Ejemplo 1
calcularCilindro ()
Prog-I Ejercicios: Str, funciones y listas - Página 7 de 12 2021-2
El profesor esta llevando a todos sus alumnos a comer a cierto restarurante, el cual
todavia no ha sido definido, por lo que permite que el primero de la lista sea quien eliga
el restaurante para ir a comer. Dado que es una decisión importante, el primero de la
lista será el alumno que tenga la más alta nota del curso.
Se le pide desarrollar un algoritmo que recibe como dato de entrada una lista de notas
y debe generar otra lista en donde la nota mas alta aparezca al inicio de la lista y las
demás notas mantegan su orden original.
Listing 21: Ejemplo 1
Ingresar lista : 15 ,11 ,12 ,13 ,18 ,08 ,14
Nueva lista : [18 , 15 , 11 , 12 , 13 , 8 , 14]
• El input son dos textos que contienen a los elementos separados por comas.
• En la salida debe mostrarse en unsa sola lı́nea con los elementos separados por
coma.
Prog-I Ejercicios: Str, funciones y listas - Página 8 de 12 2021-2
Diseñe e implemente un algoritmo que permita imprimir una lista de los costados hacia
el medio. Considere que el tamaño de la lista puede ser para o impar. Asimismo, puede
asumir que la lista ya se encuentra con datos.
Algunos ejemplos de diálogo de este programa serı́an:
Listing 22: Ejemplo 1
lista = [1 , 2 , 3 , 4 , 5 , 6]
1 6 2 5 3 4
Elabore un algoritmo y escriba un programa en Python que permita ingresar dos listas
de números enteros, solicitando en cada caso al usuario el número de elementos que
contendrá cada lista, y que luego calcule lo que se solicita a continuación.
• Cree una lista con la intersección de ambas listas (elementos que se encuentran tanto
en la primera como en la segunda lista) y al final la imprima. No debe considerar
valores repetidos.
Prog-I Ejercicios: Str, funciones y listas - Página 9 de 12 2021-2
• Cree una lista que contenga los elementos que se encuentran en la primera pero no
en la segunda lista y al final la imprima. No debe considerar valores repetidos.
• Cree una lista que contenga los elementos pares que se encuentran en la primera o
en la segunda lista y al final la imprima. No debe considerar valores repetidos.
Listas. Diseñe e implemente un algoritmo que permita ingresar varias palabras hasta
ingresar -1, para luego crear una lista con todas las palabras que empiezan con vocal
abiertas (’a’, ’e’ y ’o’), una lista con todas las palabras que empiezan con vocal cerradas
(’i’ y ’u’), y otra lista con las palabras restantes que no esten en la primera y segunda
lista. Finalmente, imprimimos las tres listas.
Algunos ejemplos de diálogo de este programa serı́an:
Listing 28: Ejemplo 1
Ingrese una palabra : a
Ingrese una palabra : z
Ingrese una palabra : a
Ingrese una palabra : i
Ingrese una palabra : o
Ingrese una palabra : u
Ingrese una palabra : -1
La primera lista es : [ ’a ’ , ’a ’ , ’o ’]
La segunda lista es : [ ’i ’ , ’u ’]
La tercera lista es : [ ’z ’]