Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


EJERCICIOS DE PROGRAMACION EN PYTHON - ESTRUCTURAS DE CONTROL (PARTE 1), Exámenes de Programación Lineal

Este documento es una guía de ejercicios de programación en Python enfocada en estructuras de control, diseñada para estudiantes de ingeniería. Contiene 60 ejercicios divididos en tres categorías: secuenciales (ejercicios 1-15), condicionales (ejercicios 16-30) y bucles (ejercicios 31-45), además de ejercicios avanzados de control de flujo (ejercicios 46-60). Cada ejercicio presenta un enunciado claro con un problema práctico, como cálculos financieros, conversiones de unidades, validaciones lógicas y manipulación de datos. Las soluciones, proporcionadas en un solucionario detallado, incluyen código Python funcional con explicaciones implícitas a través de comentarios y estructuras bien definidas. El documento es ideal para aprender y practicar conceptos básicos y avanzados de programación, con aplicaciones en matemáticas, física y gestión. Su enfoque didáctico y progresivo lo hace adecuado tanto para principiantes como para quienes buscan reforzar habilidades específicas.

Tipo: Exámenes

2024/2025

A la venta desde 16/05/2025

Apuntes-UDA
Apuntes-UDA 🇨🇱

5

(2)

392 documentos

1 / 15

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
EJERCICIOS DE PROGRAMACION EN PYTHON -
ESTRUCTURAS DE CONTROL (PARTE 1)
Universidad de Atacama - Facultad de Ingenieria
12 de Mayo de 2025
Ejercicios Secuenciales
1. alculo de Inter´es Compuesto
Un banco ofrece una tasa de inter´es anual del 5 % sobre inversiones. Escribe un programa que
solicite al usuario el capital inicial, el umero de a˜nos y calcule el monto final usando inter´es
compuesto. Muestra el resultado formateado con 2 decimales.
2. Conversi´on de Unidades
Un agricultor necesita convertir su producci´on de quintales a kilogramos y luego a toneladas.
Sabiendo que 1 quintal = 100 kg y 1 tonelada = 1000 kg, escribe un programa que tome la
cantidad en quintales y muestre su equivalente en kg y toneladas.
3. alculo de Velocidad Promedio
Un autom´ovil recorre una distancia de 150 km en un tiempo dado en horas y minutos. El programa
debe solicitar ambos valores, convertirlos a horas (ej: 1h 30m = 1.5h) y calcular la velocidad
promedio en km/h.
4. ´
Area y Per´ımetro de un Terreno
Un terreno rectangular tiene un largo y ancho expresados en metros. Escribe un programa que
calcule el ´area (largo ×ancho) y el per´ımetro (2 ×(largo + ancho)) del terreno.
5. Factura de Compra
Un cliente compra 3 productos con precios y cantidades variables. El programa debe solicitar estos
datos, calcular el subtotal, aplicar un 12 % de IVA y mostrar el total a pagar.
6. Edad Exacta
Solicita al usuario su fecha de nacimiento (d´ıa, mes, no) y la fecha actual, luego calcula y muestra
su edad exacta en nos, meses y ıas.
7. Salario Neto
Un empleado tiene un salario bruto. Se le descuenta el 10 % para pensiones y el 5 % para salud.
Escribe un programa que calcule y muestre el salario neto.
8. Distancia entre Dos Puntos
Dadas las coordenadas (x1, y1) y (x2, y2) de dos puntos en un plano cartesiano, calcula la distancia
entre ellos usando la ormula:
p(x2x1)2+ (y2y1)2
9. alculo de Propina
En un restaurante, la propina es el 10 % del total de la cuenta si esta es menor a $50, y 15 % si es
mayor o igual. El programa debe solicitar el total y mostrar la propina y el monto final.
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Vista previa parcial del texto

¡Descarga EJERCICIOS DE PROGRAMACION EN PYTHON - ESTRUCTURAS DE CONTROL (PARTE 1) y más Exámenes en PDF de Programación Lineal solo en Docsity!

EJERCICIOS DE PROGRAMACION EN PYTHON -

ESTRUCTURAS DE CONTROL (PARTE 1)

Universidad de Atacama - Facultad de Ingenieria

12 de Mayo de 2025

Ejercicios Secuenciales

1. C´alculo de Inter´es Compuesto

Un banco ofrece una tasa de inter´es anual del 5 % sobre inversiones. Escribe un programa que

solicite al usuario el capital inicial, el n´umero de a˜nos y calcule el monto final usando inter´es

compuesto. Muestra el resultado formateado con 2 decimales.

2. Conversi´on de Unidades

Un agricultor necesita convertir su producci´on de quintales a kilogramos y luego a toneladas.

Sabiendo que 1 quintal = 100 kg y 1 tonelada = 1000 kg, escribe un programa que tome la

cantidad en quintales y muestre su equivalente en kg y toneladas.

3. C´alculo de Velocidad Promedio

Un autom´ovil recorre una distancia de 150 km en un tiempo dado en horas y minutos. El programa

debe solicitar ambos valores, convertirlos a horas (ej: 1h 30m = 1.5h) y calcular la velocidad

promedio en km/h.

4. Area y Per´´ ımetro de un Terreno

Un terreno rectangular tiene un largo y ancho expresados en metros. Escribe un programa que

calcule el ´area (largo × ancho) y el per´ımetro (2 × (largo + ancho)) del terreno.

5. Factura de Compra

Un cliente compra 3 productos con precios y cantidades variables. El programa debe solicitar estos

datos, calcular el subtotal, aplicar un 12 % de IVA y mostrar el total a pagar.

6. Edad Exacta

Solicita al usuario su fecha de nacimiento (d´ıa, mes, a˜no) y la fecha actual, luego calcula y muestra

su edad exacta en a˜nos, meses y d´ıas.

7. Salario Neto

Un empleado tiene un salario bruto. Se le descuenta el 10 % para pensiones y el 5 % para salud.

Escribe un programa que calcule y muestre el salario neto.

8. Distancia entre Dos Puntos

Dadas las coordenadas (x1, y1) y (x2, y2) de dos puntos en un plano cartesiano, calcula la distancia

entre ellos usando la f´ormula: p

(x 2 − x1)^2 + (y 2 − y1)^2

9. C´alculo de Propina

En un restaurante, la propina es el 10 % del total de la cuenta si esta es menor a $50, y 15 % si es

mayor o igual. El programa debe solicitar el total y mostrar la propina y el monto final.

10. Cambio de Moneda

Un turista quiere convertir d´olares a euros. El programa debe solicitar la cantidad en d´olares y la

tasa de cambio actual, luego mostrar el equivalente en euros con 2 decimales.

11. Volumen de un Cilindro

Calcula el volumen de un cilindro usando la f´ormula V = π ×r^2 ×h, donde el usuario debe ingresar

el radio (r) y la altura (h).

12. Precio de Venta con Descuento

Un producto tiene un precio original y un descuento del 20 % si se compran m´as de 5 unidades.

El programa debe solicitar el precio y la cantidad, aplicar el descuento si corresponde y mostrar

el total.

13. C´alculo de IMC

El ´ındice de masa corporal (IMC) se calcula como peso / (altura^2 ). Solicita estos datos al usuario

y clasifica su IMC en: bajo peso (¡18.5), normal (18.5-24.9), sobrepeso (25-29.9) u obeso (≥30).

14. Tiempo de Descarga

Un archivo de tama˜no ”X”MB se descarga a una velocidad de ”Y”Mbps. Calcula el tiempo

estimado de descarga en minutos y segundos.

15. Ganancias por Intereses

Un inversor coloca su dinero en una cuenta que ofrece el 7 % de inter´es anual. El programa debe

solicitar el monto inicial y calcular cu´anto ganar´a en intereses despu´es de 3 a˜nos.

Ejercicios Condicionales (if, else, switch)

16. Aprobaci´on de Examen

Un estudiante aprueba si su nota es ≥ 60. El programa debe solicitar la nota y mostrar .Aprobado.o

Reprobado”.

17. N´umero Mayor

Dados tres n´umeros enteros, determina cu´al es el mayor.

18. D´ıa de la Semana

Solicita un n´umero del 1 al 7 y muestra el d´ıa de la semana correspondiente (1=Lunes, 2=Martes,

etc.).

19. Bono por Antig¨uedad

Un empleado recibe un bono seg´un sus a˜nos de servicio: 5 % si tiene menos de 5 a˜nos, 10 % si

tiene entre 5 y 10 a˜nos, y 15 % si tiene m´as de 10. El programa debe solicitar el salario y los a˜nos,

luego calcular el bono.

20. Clasificaci´on de Edades

Clasifica a una persona en: ni˜no (0-12), adolescente (13-19), adulto (20-64) o adulto mayor (≥65).

21. C´alculo de Descuento

Una tienda ofrece descuentos: 10 % si la compra es ≥ $100, 20 % si es ≥ $200 y 30 % si es ≥ $300.

Calcula el total a pagar.

22. A˜no Bisiesto

Determina si un a˜no es bisiesto (divisible entre 4, pero no entre 100, excepto si es divisible entre

38. Contador de Vocales

Cuenta cu´antas vocales (a, e, i, o, u) hay en una palabra ingresada por el usuario, considerando

may´usculas y min´usculas.

39. Patr´on de N´umeros

Muestra el siguiente patr´on para un n´umero ”n”:

(n repeticiones del n´umero n)

40. C´alculo de Potencia

Calcula la potencia de un n´umero (base) elevado a otro (exponente) sin usar el operador ”**”,

mediante multiplicaciones sucesivas.

41. N´umeros Perfectos

Determina si un n´umero es perfecto (la suma de sus divisores propios es igual al n´umero, ej: 6 =

42. Pal´ındromo

Verifica si una palabra o frase es pal´ındromo (se lee igual al rev´es, ignorando espacios y signos),

ej: .anita lava la tina”.

43. Suma hasta L´ımite

Pide n´umeros al usuario hasta que la suma acumulada supere 100, luego muestra el total y la

cantidad de n´umeros ingresados.

44. Divisores de un N´umero

Muestra todos los divisores de un n´umero ingresado en orden ascendente.

45. Conversi´on a Binario

Convierte un n´umero decimal entero positivo a su representaci´on binaria usando divisiones suce-

sivas por 2.

Ejercicios de Control de Flujo (break, continue, return)

46. B´usqueda en Lista

Busca un n´umero en una lista predefinida [5, 8, 12, 3, 9, 7] y usa ”break”para detener la b´usqueda

inmediatamente al encontrar el elemento.

47. N´umeros No Divisibles por 3

Imprime n´umeros del 1 al 50, pero omite los divisibles por 3 usando ¸continue”. El formato de

salida debe ser una l´ınea con los n´umeros separados por comas.

48. Funci´on de Suma

Crea una funci´on llamada ”sumar”que reciba dos par´ametros y retorne la suma de ambos. Incluye

un ejemplo de llamado a la funci´on.

49. Validaci´on de Contrase˜na

Pide una contrase˜na hasta que el usuario ingrese ”Python123”(usa ”break.al acertar). Muestra

.Acceso concedido¸cuando sea correcta.

50. N´umeros Primos con Return

Implementa una funci´on (es primo) que retorne True si un n´umero es primo y False si no lo es.

Prueba la funci´on con los valores 7, 10 y 13.

51. Suma hasta Negativo

Suma n´umeros enteros positivos ingresados por el usuario hasta que se ingrese un n´umero negativo

(usa ”break”para terminar el bucle). Muestra el total acumulado.

52. Multiplicaci´on con Condici´on

Multiplica n´umeros ingresados hasta que el producto supere 1000 (usa ”break”). Muestra cada

paso y el resultado final.

53. Funci´on de Fibonacci

Crea una funci´on ”fibonacci”que reciba ”nτ retorne el n-´esimo t´ermino de la serie (0 para n=1, 1

para n=2, etc.). Incluye ejemplos de uso.

54. Omisi´on de N´umeros Pares

Imprime n´umeros del 1 al 20, pero omite los pares usando ¸continue”. La salida debe mostrar solo

los impares en una l´ınea.

55. B´usqueda de Car´acter

Implementa una funci´on que reciba una cadena y un car´acter, y retorne la primera posici´on donde

aparece el car´acter (usa return”). Si no existe, retorne -1.

56. Divisi´on Segura

Crea una funci´on ”dividir”que reciba dos n´umeros y retorne el cociente, pero retorne la cadena

.Error”si el divisor es cero (evitando la divisi´on por cero).

57. Suma con L´ımite

Suma n´umeros ingresados hasta que la suma sea mayor que 50 (usa ”break”). Muestra cu´antos

n´umeros se ingresaron y el total.

58. N´umeros ´Unicos

Imprime n´umeros del 1 al 30, pero omite los m´ultiplos de 5 y 7 usando ¸continue”. Formatea la

salida en columnas de 5 n´umeros por l´ınea.

59. Validaci´on de Rango

Pide un n´umero entre 1 y 10 hasta que el usuario ingrese uno v´alido (usa ”break.al cumplir la

condici´on). Muestra mensajes de error para valores fuera de rango.

60. Funci´on de Potencia

Implementa una funci´on ”potencia”que reciba base y exponente, y retorne el resultado usando

multiplicaciones sucesivas (sin usar ** o pow()). Incluye casos de prueba.

6. Soluci´on Edad Exacta

1 from datetime import date 2 3 nacimiento = date (* map ( int , input ( " Fecha nacimiento ( aaaa - mm - dd ) : " ). split ( ’ - ’ ) ) ) 4 hoy = date. today () 5 edad = hoy. year - nacimiento. year - (( hoy. month , hoy. day ) < ( nacimiento. month , nacimiento. day ) ) 6 meses = ( hoy. month - nacimiento. month ) % 12 7 dias = ( hoy. day - nacimiento. day ) % 30 8 print ( f " Edad : { edad } a o s , { meses } meses , { dias } d a s " )

7. Soluci´on Salario Neto

1 salario_bruto = float ( input ( " Salario bruto : " ) ) 2 pension = salario_bruto * 0. 3 salud = salario_bruto * 0. 4 neto = salario_bruto - pension - salud 5 print ( f " Salario neto : { neto :.2 f } " )

8. Soluci´on Distancia entre Dos Puntos

1 import math 2 3 x1 , y1 = map ( float , input ( " Punto 1 ( x y ) : " ). split () ) 4 x2 , y2 = map ( float , input ( " Punto 2 ( x y ) : " ). split () ) 5 distancia = math. sqrt (( x2 - x1 ) **2 + ( y2 - y1 ) **2) 6 print ( f " Distancia : { distancia :.2 f } " )

9. Soluci´on C´alculo de Propina

1 total = float ( input ( " Total cuenta : " ) ) 2 propina = total * 0.10 if total < 50 else total * 0. 3 print ( f " Propina : { propina :.2 f }\ nTotal a pagar : { total + propina :.2 f } " )

10. Soluci´on Cambio de Moneda

1 dolares = float ( input ( " D l a r e s : " ) ) 2 tasa = float ( input ( " Tasa de cambio ( USD a EUR ) : " ) ) 3 euros = dolares * tasa 4 print ( f " Equivalente : { euros :.2 f } EUR " )

11. Soluci´on Volumen de un Cilindro

1 import math 2 3 radio = float ( input ( " Radio ( m ) : " ) ) 4 altura = float ( input ( " Altura ( m ) : " ) ) 5 volumen = math. pi * radio **2 * altura 6 print ( f " Volumen : { volumen :.2 f } m " )

12. Soluci´on Precio de Venta con Descuento

1 precio = float ( input ( " Precio unitario : " ) ) 2 cantidad = int ( input ( " Cantidad : " ) ) 3 total = precio * cantidad 4 if cantidad > 5: 5 total *= 0.80 # 20 % de descuento 6 print ( f " Total a pagar : { total :.2 f } " )

13. Soluci´on C´alculo de IMC

1 peso = float ( input ( " Peso ( kg ) : " ) ) 2 altura = float ( input ( " Altura ( m ) : " ) ) 3 imc = peso / ( altura ** 2) 4 categoria = " Bajo peso " if imc < 18.5 else " Normal " if 18.5 <= imc < 25 else " Sobrepeso " if 25 <= imc < 30 else " Obeso " 5 print ( f " IMC : { imc :.1 f } ({ categoria }) " )

14. Soluci´on Tiempo de Descarga

1 tamano = float ( input ( " T a m a o archivo ( MB ) : " ) ) 2 velocidad = float ( input ( " Velocidad ( Mbps ) : " ) ) 3 segundos = ( tamano * 8) / velocidad # Convertir MB a Mb 4 minutos = int ( segundos // 60) 5 segundos = int ( segundos % 60) 6 print ( f " Tiempo estimado : { minutos } minutos { segundos } segundos " )

15. Soluci´on Ganancias por Intereses

1 monto = float ( input ( " Monto inicial : " ) ) 2 interes = monto * 0.07 * 3 # 7 % anual por 3 anos 3 print ( f " Ganancias por intereses : { interes :.2 f } " )

Soluciones a los ejercicios condicionales

16. Soluci´on Aprobaci´on de Examen

1 nota = float ( input ( " Ingrese nota : " ) ) 2 print ( " Aprobado " if nota >= 60 else " Reprobado " )

17. Soluci´on N´umero Mayor

1 a , b , c = map ( int , input ( " Ingrese 3 n m e r o s separados por espacio : " ). split () ) 2 mayor = a if a > b and a > c else b if b > c else c 3 print ( f " El mayor es : { mayor } " )

18. Soluci´on D´ıa de la Semana

1 dias = [ " Lunes " , " Martes " , " M i r c o l e s " , " Jueves " , " Viernes " , " S b a d o " , " Domingo " ] 2 num = int ( input ( " Ingrese n m e r o (1 -7) : " ) ) 3 print ( dias [ num -1] if 1 <= num <= 7 else " N m e r o i n v l i d o " )

19. Soluci´on Bono por Antig¨uedad

1 salario = float ( input ( " Salario : " ) ) 2 anios = int ( input ( " A o s de servicio : " ) ) 3 if anios < 5: 4 bono = salario * 0. 5 elif 5 <= anios <= 10: 6 bono = salario * 0. 7 else : 8 bono = salario * 0. 9 print ( f " Bono : { bono :.2 f } " )

20. Soluci´on Clasificaci´on de Edades

1 dia = int ( input ( " D a de nacimiento : " ) ) 2 mes = int ( input ( " Mes de nacimiento : " ) ) 3 4 if ( mes == 1 and dia >= 20) or ( mes == 2 and dia <= 18) : 5 signo = " Acuario " 6 elif ( mes == 2 and dia >= 19) or ( mes == 3 and dia <= 20) : 7 signo = " Piscis " 8 # ... ( completar con todos los signos ) 9 else : 10 signo = " Capricornio " 11 12 print ( f " Signo zodiacal : { signo } " )

26. Soluci´on C´alculo de Tarifa

1 horas = int ( input ( " Horas estacionado : " ) ) 2 if horas > 8: 3 total = 15 4 else : 5 total = 3 + 2 * ( horas - 1) if horas > 1 else 3 6 print ( f " Total a pagar : $ { total :.2 f } " )

27. Soluci´on N´umero Positivo, Negativo o Cero

1 num = float ( input ( " Ingrese n m e r o : " ) ) 2 if num > 0: 3 print ( " Positivo " ) 4 elif num < 0: 5 print ( " Negativo " ) 6 else : 7 print ( " Cero " )

28. Soluci´on C´alculo de Salario por Horas Extras

1 horas = float ( input ( " Horas trabajadas : " ) ) 2 salario = horas * 10 if horas <= 40 else 400 + ( horas - 40) * 15 3 print ( f " Salario semanal : $ { salario :.2 f } " )

29. Soluci´on Evaluaci´on de Expresi´on

1 a = int ( input ( " Valor de a : " ) ) 2 b = int ( input ( " Valor de b : " ) ) 3 c = int ( input ( " Valor de c : " ) ) 4 resultado = ( a + b ) * c if a % 2 == 0 else ( a * b ) + c 5 print ( f " Resultado : { resultado } " )

30. Soluci´on Descuento por Membres´ıa

1 membresia = input ( " Tipo m e m b r e s a ( Oro / Plata / Bronce ) : " ). lower () 2 monto = float ( input ( " Monto compra : " ) ) 3 4 if membresia == " oro " : 5 descuento = 0. 6 elif membresia == " plata " : 7 descuento = 0. 8 elif membresia == " bronce " : 9 descuento = 0. 10 else : 11 descuento = 0 12 13 total = monto * (1 - descuento ) 14 print ( f " Total con descuento : { total :.2 f } " )

Soluciones a los ejercicios de bucles

31. Soluci´on Suma de N´umeros Pares

1 n = int ( input ( " Ingrese n m e r o l m i t e : " ) ) 2 suma = 0 3 for i in range (2 , n +1 , 2) : 4 suma += i 5 print ( f " Suma de pares : { suma } " )

32. Soluci´on Factorial de un N´umero

1 n = int ( input ( " N m e r o : " ) ) 2 factorial = 1 3 for i in range (1 , n +1) : 4 factorial *= i 5 print ( f " { n }! = { factorial } " )

33. Soluci´on Tabla de Multiplicar

1 num = int ( input ( " Mostrar tabla del : " ) ) 2 for i in range (1 , 11) : 3 print ( f " { num } { i } = { num * i } " )

34. Soluci´on N´umeros Primos

1 n = int ( input ( " Verificar si es primo : " ) ) 2 if n <= 1: 3 print ( " No es primo " ) 4 else : 5 primo = True 6 for i in range (2 , int ( n **0.5) +1) : 7 if n % i == 0: 8 primo = False 9 break 10 print ( " Es primo " if primo else " No es primo " )

35. Soluci´on Serie Fibonacci

1 n = int ( input ( " T r m i n o s a mostrar : " ) ) 2 a , b = 0 , 1 3 for _ in range ( n ) : 4 print (a , end = " " ) 5 a , b = b , a + b

36. Soluci´on Suma de D´ıgitos

1 num = input ( " N m e r o : " ) 2 suma = sum ( int ( d ) for d in num ) 3 print ( f " Suma d g i t o s : { suma } " )

37. Soluci´on Adivina el N´umero

1 import random 2 numero = random. randint (1 , 100) 3 intentos = 0 4 5 while True : 6 intento = int ( input ( " Adivina (1 -100) : " ) ) 7 intentos += 1 8 if intento < numero :

Soluciones a los ejercicios de control de flujo

46. Soluci´on B´usqueda en Lista

1 numeros = [5 , 8 , 12 , 3 , 9 , 7] 2 busqueda = int ( input ( " N m e r o a buscar : " ) ) 3 encontrado = False 4 5 for num in numeros : 6 if num == busqueda : 7 encontrado = True 8 break 9 10 print ( " Encontrado " if encontrado else " No encontrado " )

47. Soluci´on N´umeros No Divisibles por 3

1 for i in range (1 , 51) : 2 if i % 3 == 0: 3 continue 4 print (i , end = " , " if i < 50 else " " )

48. Soluci´on Funci´on de Suma

1 def sumar (a , b ) : 2 return a + b 3 4 # Ejemplo de uso 5 resultado = sumar (5 , 3) 6 print ( f " 5 + 3 = { resultado } " )

49. Soluci´on Validaci´on de Contrase˜na

1 while True : 2 clave = input ( " Ingrese c o n t r a s e a : " ) 3 if clave == " Python123 " : 4 print ( " Acceso concedido " ) 5 break 6 print ( " C o n t r a s e a incorrecta " )

50. Soluci´on N´umeros Primos con Return

1 def es_primo ( n ) : 2 if n <= 1: 3 return False 4 for i in range (2 , int ( n **0.5) +1) : 5 if n % i == 0: 6 return False 7 return True 8 9 # Pruebas 10 print ( es_primo (7) ) # True 11 print ( es_primo (10) ) # False 12 print ( es_primo (13) ) # True

51. Soluci´on Suma hasta Negativo

1 suma = 0 2 while True : 3 num = int ( input ( " Ingrese n m e r o ( negativo para terminar ) : " ) ) 4 if num < 0:

5 break 6 suma += num 7 print ( f " Suma total : { suma } " )

52. Soluci´on Multiplicaci´on con Condici´on

1 producto = 1 2 while producto <= 1000: 3 num = float ( input ( " Ingrese n m e r o : " ) ) 4 producto *= num 5 print ( f " Producto parcial : { producto :.2 f } " ) 6 print ( f " Producto final : { producto :.2 f } " )

53. Soluci´on Funci´on de Fibonacci

1 def fibonacci ( n ) : 2 if n <= 0: 3 return 0 4 a , b = 0 , 1 5 for _ in range (n -1) : 6 a , b = b , a + b 7 return a 8 9 # Ejemplos 10 print ( fibonacci (5) ) # 3 11 print ( fibonacci (10) ) # 34

54. Soluci´on Omisi´on de N´umeros Pares

1 for i in range (1 , 21) : 2 if i % 2 == 0: 3 continue 4 print (i , end = " " )

55. Soluci´on B´usqueda de Car´acter

1 def buscar_caracter ( cadena , caracter ) : 2 for i , c in enumerate ( cadena ) : 3 if c == caracter : 4 return i 5 return - 6 7 # Ejemplo 8 posicion = buscar_caracter ( " p r o g r a m a c i n " , " a " ) 9 print ( f " P o s i c i n : { posicion } " ) # 5

56. Soluci´on Divisi´on Segura

1 def dividir (a , b ) : 2 return a / b if b != 0 else " Error " 3 4 # Pruebas 5 print ( dividir (10 , 2) ) # 5. 6 print ( dividir (5 , 0) ) # Error

57. Soluci´on Suma con L´ımite

1 suma = 0 2 contador = 0 3 while suma <= 50: 4 num = float ( input ( " Ingrese n m e r o : " ) )