Reto01_Operaciones‐basicas - Jul1anT/Retos-OOP_2025 GitHub Wiki
Código (1): Operaciones básicas
Este programa permite realizar operaciones matemáticas básicas: suma, resta, multiplicación y división.
- Entrada: El usuario introduce el operador (
+
,-
,*
,/
) y dos números. - Procesamiento: Según el operador ingresado, realiza la operación correspondiente. Incluye validación para evitar la división por cero.
- Salida: Muestra el resultado o un mensaje de error si la operación no es válida.
Ejemplo de uso:
- Entrada:
+
,4
,5
- Salida:
El resultado es: 9
def operaciones_basicas():
operacion = (input("Digite el caracter de la operación que desea realizar (+, -, *, /): "))
num1 = int(input("Digite el primer número: "))
num2 = int(input("Digite el segundo número: "))
if operacion == '+':
return num1 + num2
elif operacion == '-':
return num1 - num2
elif operacion == '*':
return num1 * num2
elif operacion == '/':
if num2 != 0:
return num1 / num2
else:
return "Error: División por cero"
else:
return "Operación no válida"
result = operaciones_basicas()
print(f"El resultado es: {result}")
Código (2): Verificación de palíndromo
Determina si una palabra es un palíndromo, es decir, si se lee igual al derecho y al revés.
- Entrada: El usuario introduce una palabra.
- Procesamiento: Compara los caracteres desde los extremos hacia el centro.
- Salida:
True
si es palíndromo,False
si no lo es.
Ejemplo de uso:
- Entrada:
"radar"
- Salida:
Es palíndromo: True
def es_palindromo(palabra):
longitud = len(palabra)
for i in range(longitud // 2):
if palabra[i] != palabra[longitud - i - 1]:
return False
return True
palabra = input("Digite la palabra que desea verificar si es palíndromo: ")
result = es_palindromo(palabra)
print(f"Es palindromo: {result}")
Código (3): Números primos
Verifica cuáles números de una lista son primos.
- Entrada: Una lista de números enteros proporcionada por el usuario.
- Procesamiento: Usa una función para comprobar si cada número de la lista es primo (divisible solo entre 1 y sí mismo).
- Salida: Una lista con los números primos, o
None
si no lo son.
Ejemplo de uso:
- Entrada:
"2,3,4,5,6"
- Salida:
Los números primos son: [2, 3, None, 5, None]
def es_primo(n):
if n < 2:
return None
for i in range(2,int(n**0.5)+1):
if (n%i==0):
return None
return n
nums = input("Digite el arreglo de números enteros (separandolos por ','): ")
nums = [int(num) for num in nums.split(',')]
primos = []
for i in range(len(nums)):
primos.append(es_primo(nums[i]))
print(f"Los números primos son: {primos}")
Código (4): Mayor suma consecutiva
Encuentra la mayor suma entre dos números consecutivos de una lista.
- Entrada: Una lista de números enteros.
- Procesamiento: Calcula todas las sumas de pares consecutivos y devuelve la mayor.
- Salida: La mayor suma encontrada.
Ejemplo de uso:
- Entrada:
"1,3,5,2,8"
- Salida:
La mayor suma entre dos elementos consecutivos es: 10
def suma_mayor(lista):
if len(lista) < 2:
return None # No hay suficientes elementos para comparar
Suma = lista[0] + lista[1]
for i in range(1, len(lista) - 1):
suma = lista[i] + lista[i + 1]
if suma > Suma:
Suma = suma
return Suma
lista = input("Digite el arreglo de números enteros (separandolos por ','): ")
nums = [int(num) for num in lista.split(',')]
print(f"La mayor suma entre dos elementos consecutivos es: {suma_mayor(nums)}")
Código: Encontrar anagramas
Este programa encuentra las palabras en una lista que son anagramas entre sí, es decir, aquellas que tienen los mismos caracteres pero en diferente orden.
- Entrada: Una lista de palabras separadas por comas.
- Procesamiento: Ordena las letras de cada palabra y verifica si alguna otra palabra en la lista tiene las mismas letras ordenadas (anagrama).
- Salida: Una lista con las palabras que son anagramas.
Ejemplo de uso:
- Entrada:
"alma,mal,amla,pan,nap"
- Salida:
Las palabras que tienen los mismos caracteres son: ['alma', 'mal', 'amla', 'pan', 'nap']
def suma_mayor(lista):
if len(lista) < 2:
return None # No hay suficientes elementos para comparar
Suma = lista[0] + lista[1]
for i in range(1, len(lista) - 1):
suma = lista[i] + lista[i + 1]
if suma > Suma:
Suma = suma
return Suma
lista = input("Digite el arreglo de números enteros (separandolos por ','): ")
nums = [int(num) for num in lista.split(',')]
print(f"La mayor suma entre dos elementos consecutivos es: {suma_mayor(nums)}")