









Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
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
1 / 15
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!










Ejercicios Condicionales (if, else, switch)
Ejercicios de Control de Flujo (break, continue, return)
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 " )
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 } " )
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 } " )
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 } " )
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 " )
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 " )
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 } " )
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 }) " )
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 " )
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
1 nota = float ( input ( " Ingrese nota : " ) ) 2 print ( " Aprobado " if nota >= 60 else " Reprobado " )
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 } " )
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 " )
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 } " )
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 } " )
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 } " )
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 " )
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 } " )
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 } " )
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
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 } " )
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 } " )
1 num = int ( input ( " Mostrar tabla del : " ) ) 2 for i in range (1 , 11) : 3 print ( f " { num } { i } = { num * i } " )
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 " )
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
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 } " )
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
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 " )
1 for i in range (1 , 51) : 2 if i % 3 == 0: 3 continue 4 print (i , end = " , " if i < 50 else " " )
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 } " )
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 " )
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
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 } " )
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 } " )
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
1 for i in range (1 , 21) : 2 if i % 2 == 0: 3 continue 4 print (i , end = " " )
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
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
1 suma = 0 2 contador = 0 3 while suma <= 50: 4 num = float ( input ( " Ingrese n m e r o : " ) )