Practica Sem09

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

EJERCICIOS FOR

1. Ingresar por teclado 7 valores numéricos positivos e indicar:


 El menor valor ingresado
 El mayor valor ingresado
 La suma de los valores ingresados
 El promedio de los valores ingresados

Código:
def procesar_valores():
valores = []

for i in range(7):
while True:
try:
valor = float(input(f"Ingrese el valor {i + 1}: "))
if valor > 0:
valores.append(valor)
break
else:
print("Por favor, ingrese un valor positivo.")
except ValueError:
print("Entrada no válida. Ingrese un número.")

menor_valor = min(valores)
mayor_valor = max(valores)
suma_valores = sum(valores)
promedio_valores = suma_valores / len(valores)

print(f"\nEl menor valor ingresado es: {menor_valor}")


print(f"El mayor valor ingresado es: {mayor_valor}")
print(f"La suma de los valores ingresados es: {suma_valores}")
print(f"El promedio de los valores ingresados es: {promedio_valores:.2f}")

procesar_valores()

1
2. Desarrollar una aplicación que genere 30 números aleatorios enteros
comprendidos entre 10 y 80 la cual debe de realizar lo siguiente:
 Mostrar en pantalla los números generados
 Mostrar el menor valor
 Mostrar el mayor valor
 Mostar la suma de los valores generados
 Mostrar el promedio de los valores generados

Código:
import random

def generar_numeros():
numeros = [random.randint(10, 80) for _ in range(30)]

menor_valor = min(numeros)
mayor_valor = max(numeros)
suma_valores = sum(numeros)
promedio_valores = suma_valores / len(numeros)

print("Números generados:")
print(numeros)
print(f"\nEl menor valor es: {menor_valor}")
print(f"El mayor valor es: {mayor_valor}")
print(f"La suma de los valores generados es: {suma_valores}")
print(f"El promedio de los valores generados es: {promedio_valores:.2f}")

generar_numeros()

3. Escriba una aplicación para determinar cuántos números enteros comprendidos


entre 100 y 999 son iguales a la suma de sus dígitos elevados al cubo.

Código:
def numeros_cubos():
contador = 0

for num in range(100, 1000):


# Separar los dígitos
centenas = num // 100
decenas = (num // 10) % 10
unidades = num % 10

# Calcular la suma de los dígitos elevados al cubo


suma_cubos = centenas**3 + decenas**3 + unidades**3

# Verificar si el número es igual a la suma de los cubos

2
if num == suma_cubos:
contador += 1
print(num) # Opcional: mostrar el número que cumple la condición

print(f"\nCantidad de números enteros entre 100 y 999 que son iguales a la suma de
sus dígitos elevados al cubo: {contador}")

numeros_cubos()

4. Escribe un programa que diga si un número entero positivo introducido por


teclado es o no primo.

Código:

def es_primo(n):
if n <= 1:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True

def verificar_numero_primo():
while True:
try:
numero = int(input("Introduce un número entero positivo: "))
if numero < 1:
print("Por favor, introduce un número entero positivo.")
continue
break
except ValueError:
print("Entrada no válida. Por favor, introduce un número entero positivo.")

if es_primo(numero):
print(f"{numero} es un número primo.")
else:
print(f"{numero} no es un número primo.")

3
# Llamada a la función
verificar_numero_primo()

5. Una cliente compro un producto para pagar en 24 meses. El primer mes pagó
S/. 15, el segundo S/. 25, el tercero S/. 35 y así sucesivamente. Desarrollar una
aplicación para determinar cuánto debe pagar mensualmente y el total de lo que
pagó después de los 24 meses.

Código:
def calcular_pagos():
meses = 24
total_pagado = 0

print("Pagos mensuales:")

for mes in range(1, meses + 1):


pago_mensual = 15 + (mes - 1) * 10 # Incrementa S/. 10 cada mes
total_pagado += pago_mensual
print(f"Mes {mes}: S/. {pago_mensual}")

print(f"\nTotal pagado después de {meses} meses: S/. {total_pagado}")

# Llamada a la función
calcular_pagos()

6. Genere los 80 primeros números naturales, finalizado el proceso muestre la


suma de los pares y la de los impares.
Código:
def sumar_pares_impares(n):
suma_pares = 0
suma_impares = 0

for i in range(1, n + 1):


if i % 2 == 0:
suma_pares += i
else:
4
suma_impares += i

return suma_pares, suma_impares

# Generar los 80 primeros números naturales


n = 80
suma_pares, suma_impares = sumar_pares_impares(n)

print(f"Suma de los números pares: {suma_pares}")


print(f"Suma de los números impares: {suma_impares}")

7. Desarrollar un algoritmo que permita realizar la suma de los cuadrados y de los


cubos de un número ingresado por teclado.

def suma_cuadrados_y_cubos(n):

suma_cuadrados = 0

suma_cubos = 0

for i in range(1, n + 1):

suma_cuadrados += i ** 2 # Suma de los cuadrados

suma_cubos += i ** 3 # Suma de los cubos

return suma_cuadrados, suma_cubos

def calcular_sumas():

while True:

try:

numero = int(input("Introduce un número entero positivo: "))

if numero < 1:

print("Por favor, introduce un número entero positivo.")

continue

break

5
except ValueError:

print("Entrada no válida. Por favor, introduce un número entero positivo.")

suma_cuadrados, suma_cubos = suma_cuadrados_y_cubos(numero)

print(f"Suma de los cuadrados desde 1 hasta {numero}: {suma_cuadrados}")

print(f"Suma de los cubos desde 1 hasta {numero}: {suma_cubos}")

# Llamada a la función

calcular_sumas()

8. Desarrollar un algoritmo que permita calcular el valor de PI a partir de la siguiente


expresión:
𝑃𝐼 1 1 1
= 1− + − +⋯
4 3 5 7

Código:

def calcular_pi(terminos): pi_aprox = 0 for i in range(terminos): pi_aprox += (-1)**i / (2 * i


+ 1) return pi_aprox * 4 terminos = 10 pi_calculado = calcular_pi(terminos) print(f"El valor
aproximado de Pi con {terminos} términos es: {pi_calculado}")

9. Desarrollar un algoritmo que permita calcular el cuadrado de un número


ingresando la cantidad de términos de la siguiente serie:
𝑛2 = 1 + 3 + 5 + ⋯ + 2𝑛 – 1
Código:
n = int(input("Ingresa un número entero positivo: ")) suma = 0 for i in range(n): suma +=
(2 * i + 1) print(f"El cuadrado de {n} es: {suma}")

6
10. Desarrollar una aplicación que genere edades aleatorias que se encuentren en
el intervalo cerrado de 1 a 25 para 59 personas e indicar:
 La mayor edad generada
 La menor edad generada
 El porcentaje de los mayores de edad
 El porcentaje de los menores de edad
 El promedio o media de las edades

Código:

import random
edades = [random.randint(1, 25) for _ in range(59)]
mayor_edad = max(edades)
menor_edad = min(edades)
mayores_de_edad = sum(1 for edad in edades if edad >= 18)
menores_de_edad = len(edades) - mayores_de_edad
porcentaje_mayores = (mayores_de_edad / len(edades)) * 100
porcentaje_menores = (menores_de_edad / len(edades)) * 100
promedio_edades = sum(edades) / len(edades)
print(f"Edades generadas: {edades}")
print(f"Mayor edad generada: {mayor_edad}")
print(f"Menor edad generada: {menor_edad}")
print(f"Porcentaje de mayores de edad: {porcentaje_mayores:.2f}%")
print(f"Porcentaje de menores de edad: {porcentaje_menores:.2f}%")
print(f"Promedio de las edades: {promedio_edades:.2f}")

7
11. Diseñe un programa que imprima y sume 100 términos de la siguiente serie. Los
términos serán mostrados en una columna a razón de un término por fila.

1 5 9 13
,
2 5 , 8 , 11 , …

numerador = 1 denominador = 2
suma_total = 0 for i in range(100): termino
= numerador / denominador
print(f"{numerador}/{denominador} =
{termino}") suma_total += termino
numerador += 4 denominador += 3
print(suma_total)

También podría gustarte