0% encontró este documento útil (0 votos)
60 vistas7 páginas

Probemos Mas Funciones

Descargar como txt, pdf o txt
Descargar como txt, pdf o txt
Descargar como txt, pdf o txt
Está en la página 1/ 7

PROBEMOS FUNCIONES

Ejercicio 1: Triángulos

Escriba una función que tome las longitudes de los dos lados más cortos de un
triángulo rectángulo como sus parámetros y devuelva la hipotenusa del triángulo,
calculada usando el teorema de Pitágoras, como resultado de la función. Incluya un
programa principal que lea las longitudes de los lados más cortos de un triángulo
rectángulo del usuario, use su función para calcular la longitud de la hipotenusa y
muestre el resultado.

Ejercicio 2: Tarifa del taxi

En una jurisdicción particular, las tarifas de taxi consisten en una tarifa base de
$40.00, más $15.00 por cada 140 metros recorridos. Escriba una función que tome la
distancia recorrida (en kilómetros) como su único parámetro y devuelva la tarifa
total como su único resultado. Escriba un programa principal que use la función.

Sugerencia: Utilice constantes para presentar la base y la porción variable de las


tarifas así el programa podrá actualizar fácilmente cuando las tasas aumentan.

Ejercicio 3: Calculadora de envío

Un minorista en línea proporciona una forma de envío urgente de $ 10.95 para el


primer elemento y $ 2.95 para cada segundo elemento posterior. Escriba una función
que tome el número de elementos en el pedido como su único parámetro. Devuelva los
gastos de envío del pedido como resultado de la función. Incluya un programa
principal que lea la cantidad de artículos comprados al usuario y muestre los
gastos de envío.

Ejercicio 4: Mediana de tres valores

Escriba una función que tome tres números como parámetros y devuelva el valor medio
de esos parámetros como resultado. Incluya un programa principal que lea tres
valores del usuario y muestre su mediana.

Sugerencia: El valor medio es el medio de los tres valores cuando se ordenan en


orden ascendente. Se puede encontrar usando declaraciones if, o con un poco de
creatividad matemática.

Ejercicio 5: De número entero a número ordinal

Las palabras como primero, segundo y tercero se refieren a números ordinales. En


este ejercicio, escribirá una función que toma un número entero como su único
parámetro y devuelve una cadena que contiene el número ordinal apropiado como único
resultado. Su función debe manejar los enteros entre 1 y 12 (inclusive). Debería
devolver una cadena vacía si se proporciona un valor fuera de este rango como
parámetro. Incluya un programa principal que utilice su función mostrando cada
número entero del 1 al 12 y su número ordinal.

Ejercicio 6: Centrar una cadena en la terminal

Escriba una función que tome una cadena de caracteres como primer parámetro y el
ancho de la terminal en caracteres como segundo parámetro. Su función debe devolver
una nueva cadena que consta de la cadena original y el número correcto de espacios
iniciales para que la cadena original aparezca centrada dentro del ancho
proporcionado cuando se imprima. No agregue ningún carácter al final de la cadena.
Incluya un programa principal que use su función.

Ejercicio 7 : ¿Es un triángulo válido?

Si tiene 3 varillas, posiblemente de diferentes longitudes, puede o no ser posible


colocarlas para que formen un triángulo cuando sus extremos se toquen. Por ejemplo,
si todas las varillas tienen una longitud de 6 centímetros. entonces uno puede
construir fácilmente un triángulo equilátero con ellos. Sin embargo, si una
varillas es de 6 centímetros de largo, mientras que los otros dos son cada uno de
solo 2 centímetros de largo, entonces no se puede formar un triángulo. En general,
si una longitud es mayor o igual que la suma de las otras dos, entonces las
longitudes no pueden usarse para formar un triángulo. De lo contrario, pueden
formar un triángulo. Escriba una función que determine si tres longitudes pueden
formar un triángulo. La función tomará 3 parámetros y devolverá un resultado
booleano. Además, escriba un programa que lea 3 longitudes del usuario y muestre el
comportamiento de esta función.

Ejercicio 8: Capitalízalo

Muchas personas no usan letras mayúsculas correctamente, especialmente cuando


escriben en dispositivos pequeños como teléfonos inteligentes. En este ejercicio,
escribirá una función que capitaliza los caracteres apropiados en una cadena. Una
"i" minúscula debe reemplazarse por una "I" mayúscula si está precedida y seguida
de un espacio. El primer carácter de la cadena también debe estar en mayúscula, así
como el primer carácter no espacial después de un ".", "!" o "?" Por ejemplo, si la
función se proporciona con la cadena "¿a qué hora tengo que estar allí? ¿cuál es la
dirección?" entonces debería devolver la cadena "¿A qué hora tengo que estar allí?
¿Cuál es la dirección?". Incluya un programa principal que lea una cadena del
usuario, la capitalice utilizando su función y muestre el resultado.

Ejercicio 9: ¿Un string representan un entero?

En este ejercicio escribirá una función llamada es_entero que determina si los
caracteres en una cadena representan un número entero válido. Al determinar si un
string representa un número entero, debe ignorar cualquier espacio en blanco
inicial o final. Una vez que se ignora este espacio en blanco, una cadena
representa un número entero si su longitud es al menos 1 y solo contiene dígitos, o
si su primer carácter es + o - y el primer carácter va seguido de uno o más
caracteres, todos los cuales son dígitos Escriba un programa principal que lea una
cadena del usuario e informe si representa o no un número entero.
Sugerencia: Puede encontrar los métodos lstrip, rstrip y / o strip para cadenas
útiles cuando complete este ejercicio.

Ejercicio 10: Precedencia del operador

Escriba una función llamada precedencia que devuelve un número entero que
representa la precedencia de un operador matemático. Una cadena que contiene el
operador se pasará a la función como su único parámetro. Su función debe devolver 1
para + y -, 2 para * y /, y 3 para ˆ. Si la cadena que se pasa a la función no es
uno de estos operadores, la función debería devolver -1. Incluya un programa
principal que lea un operador del usuario y muestre la precedencia del operador o
un mensaje de error que indique que la entrada no era un operador.

En este ejercicio, se usa ˆ para representar la exponenciación, en lugar de la


elección de Python de **, para facilitar el desarrollo de la solución.

Ejercicio 11: ¿Es un número primo?

Un número primo es un número entero mayor que 1 que solo es divisible por uno y por
sí mismo. Escriba una función que determine si su parámetro es primo o no,
devolviendo True si lo es y False en caso contrario. Escriba un programa principal
que lea un número entero del usuario y muestre un mensaje que indique si es primo o
no. Asegúrese de que el programa principal no se ejecutará si el archivo que
contiene su solución se importa a otro programa.

Ejercicio 12: Próximo Siguiente

En este ejercicio creará una función llamada proximo_primo que encuentra y devuelve
el primer número primo mayor que algún número entero, n. El valor de n se pasará a
la función como su único parámetro. Incluya un programa principal que lea un número
entero del usuario y muestre el primer número primo mayor que el valor ingresado.

Ejercicio 13: Contraseña aleatoria

Escriba una función que genere una contraseña aleatoria. La contraseña debe tener
una longitud aleatoria de entre 7 y 10 caracteres. Cada carácter debe seleccionarse
al azar de las posiciones 33 a 126 en la tabla ASCII. Su función no tomará ningún
parámetro y devolverá la contraseña generada aleatoriamente como su único
resultado. Desarrolle un programa principal y muestre la contraseña generada
aleatoriamente.

Sugerencia: Probablemente encuentre útil la función chr cuando complete este


ejercicio.

Ejercicio 14: Matricula aleatoria


En una jurisdicción particular, las matrículas más antiguas consisten en tres
letras seguidas de tres números. Cuando se utilizaron todas las placas que siguen
ese patrón, el formato se cambió a cuatro números seguidos de tres letras. Escriba
una función que genere una matrícula aleatoria. Escriba un programa principal que
llame a su función y muestre la placa generada al azar.

Ejercicio 15: Verificar una contraseña

En este ejercicio escribirá una función que determina si una contraseña es buena o
no. Definiremos como una buena contraseña aquella que tenga una longitud de al
menos 8 caracteres y contenga al menos una letra mayúscula, al menos una letra
minúscula y al menos un número. Su función debe devolver verdadero si la contraseña
que se le pasó, como único parámetro, es buena, de lo contrario debería devolver
falso. Incluya un programa principal que lea una contraseña del usuario e informe
si es buena o no.

Ejercicio 16: Dígitos hexadecimales y decimales

Escriba dos funciones, hex2int e int2hex, que conviertan entre dígitos


hexadecimales (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F) y enteros de base
10. La función hex2int es responsable de convertir una cadena que contiene un solo
dígito hexadecimal en un entero de base 10, mientras que la función int2hex es
responsable de convertir un entero entre 0 y 15 en un solo dígito hexadecimal. Cada
función tomará el valor para convertir como su único parámetro y devolverá el valor
convertido como el único resultado de la función. Asegúrese de que la función
hex2int funcione correctamente para letras mayúsculas y minúsculas. Sus funciones
deberían finalizar el programa con un mensaje de error significativo si se
proporciona un parámetro no válido.

Ejercicio 17: Conversiones de bases arbitrarias

Escriba un programa que permita al usuario convertir un número de una base a otra.
Su programa debe admitir bases entre 2 y 16 tanto para el número de entrada como
para el número de resultado. Si el usuario elige una base fuera de este rango, se
debe mostrar el mensaje de error apropiado y el programa debe salir. Divida su
programa en varias funciones, incluida una función que convierte de una base
arbitraria a una base 10, una función que convierte de una base 10 a una base
arbitraria y un programa principal que lee las bases y el número de entrada del
usuario.

Ejercicio 18: Días en un mes

Escriba una función que determine mostrar cuántos días hay en un mes en particular.
Su función tomará dos parámetros: el mes como un número entero entre 1 y 12, y el
año como un número entero de cuatro dígitos. Asegúrese de que su función informa el
número correcto de días en febrero para los años bisiestos. Incluya un programa
principal que lea un mes y un año del usuario y muestre el número de días en ese
mes.

Ejercicio 19: Reducir una fracción a los términos más bajos


Escriba una función que tome dos enteros positivos que representan el numerador y
el denominador de una fracción como sus dos únicos parámetros. El cuerpo de la
función debe reducir la fracción a los términos más bajos y luego devolver el
numerador y el denominador de la fracción reducida como resultado. Por ejemplo, si
los parámetros pasados a la función son 6 y 63, las funciones deberían volver 2 y
21. Incluya un programa principal que permita al usuario ingresar un numerador y un
denominador. Entonces su programa debería mostrar la fracción reducida.

Ejercicio 20: Fechas mágicas

Una fecha mágica es una fecha en la que el día multiplicado por el mes es igual al
año de dos dígitos. Por ejemplo, junio 10,1960 es una fecha mágica porque junio es
el sexto mes y 6 veces 10 es 60, que es igual al año de dos dígitos. Escriba una
función que determine si una fecha es mágica o no. Use su función para crear un
programa principal que encuentre y muestre todas las fechas mágicas del siglo XX.

Ejercicio 21: Números pares

Escriba una función llamada numeros_pares que, dada una lista de enteros, devuelve
una nueva lista que contiene solo los enteros pares. Use la función en un programa
principal y pruebe su código en varios valores diferentes.

Ejercicio 22: ¿Es un palíndromo?

Escriba una función llamada es_palindromo que devuelva True si una cadena dada es
un palíndromo. Un palíndromo es una cadena que se escribe igual hacia atrás o hacia
adelante. Por ejemplo, radar es palíndromo. Use la función en un programa principal
y pruebe su código en varios valores diferentes.

Ejercicio 23: Sumar los números de una lista

Escribe una función recursiva llamada sumar_lista que recibe una lista de números y
devuelve la suma de esos números calculado de forma recursiva. Use la función en un
programa y pruebe su código en varios valores diferentes.

Ejercicio 24: Factores de un número

Escriba una función llamada factores que dan un número entero devuelve la lista de
los factores de ese número entero. Por ejemplo, los factores(6) devolvería [1, 2,
3, 6]. Incluya un programa principal que lea un número del usuario y muestre la
lista de los factores.

Ejercicio 25: Sumar los factores de un número

Escribe una función llamada suma_de_factores que dado un entero devuelve la suma de
los factores de ese entero. Por ejemplo, suma_de_factores(6) devolvería 12 ya que 1
+ 2 + 3 + 6 = 12. Incluya un programa principal que lea un número del usuario y
pruebe su código con varios valores diferentes.

Ejercicio 26: Sumar valores en un rango

Escribe una función llamada sumar_rango que dado dos enteros devuelve la suma de
todos los enteros entre los dos enteros dados inclusive. Por ejemplo,
sumar_rango(3,6) devolvería 18. Use la función en un programa principal y pruebe su
código en varios valores diferentes.

Ejercicio 27: Palabra inversa

Escribir una función llamada palabra_inversa que dada una secuencia de caracteres
que representa una oración, devuelve la misma oración pero con cada palabra
invertida. Por ejemplo, palabra_inversa(“Hola mundo”) devolvería “aloH odnum”. Use
la función en un programa principal y pruebe su código en varios valores
diferentes.

Ejercicio 28: Elementos en posiciones impares

Escriba una función llamada elementos_impares que, dada una lista, devuelve una
lista nueva que contiene sólo los elementos impares de la lista original. El primer
elemento de una lista (es decir, índice 0) es un elemento par. Por ejemplo para el
caso de que se ejecute la función pasando como parámetro la lista [1, 2, 3, 4] la
función debe retornar [2, 4]. Use la función en un programa principal y pruebe su
código en varias combinaciones de valores diferentes.

Ejercicio 29: Conversiones entre base decimal y binaria

Realizar dos funciones una que nos permita convertir un número entero a binario, y
otra que nos permita convertir un numero binario a decimal, convertir_a_binario
recibe un número entero y devuelve una cadena con la representación del número en
binario y convertir_a_decimal recibe una cadena con la representación binaria de un
número y devuelve el número en decimal. Crea un programa principal que permita
convertir un numero ingresado por el usuario de decimal a binario o de binario a
decimal según corresponda.

Ejercicio 30: Números romanos

Crear un programa que convierta un número entero (mayor que 1 y menor o igual que
1000) a su representación en números romanos. Use la función en un programa
principal y pruebe su código en varias combinaciones de valores diferentes.

Ejercicio 31: Calendario

Realizar un programa que pida un mes y un año (superior a 1900) y muestre el


calendario del mes de esta manera:

L M M J V S D

====================

1 2 3 4 5 6

7 8 9 10 11 12 13

14 15 16 17 18 19 20

21 22 23 24 25 26 27

28 29 30 31

Para ello es necesario averiguar qué día de la semana (Lunes, Martes, …)


corresponde con un fecha determinada.

También podría gustarte