Last active
February 7, 2024 07:10
-
-
Save lokilloboss/78076b1b3a03cb3fb54d0290ac7a30fd to your computer and use it in GitHub Desktop.
Reto del dia martes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import re | |
def registrar_usuario(nombre, apellidos, telefono, correo): | |
""" | |
Valida e ingresa la información de un nuevo usuario. | |
Args: | |
nombre: Nombre del usuario. | |
apellidos: Apellidos del usuario. | |
telefono: Número de teléfono del usuario. | |
correo: Correo electrónico del usuario. | |
Returns: | |
True si la información se pudo registrar, False si hay errores. | |
""" | |
# Validar longitud de nombre, apellidos y correo | |
if len(nombre) < 5 or len(nombre) > 50: | |
print(f"Error: El nombre debe tener entre 5 y 50 caracteres.") | |
return False | |
if len(apellidos) < 5 or len(apellidos) > 50: | |
print(f"Error: Los apellidos deben tener entre 5 y 50 caracteres.") | |
return False | |
if len(correo) < 5 or len(correo) > 50: | |
print(f"Error: El correo electrónico debe tener entre 5 y 50 caracteres.") | |
return False | |
# Validar longitud de telefono | |
if len(telefono) != 10: | |
print(f"Error: El número de teléfono debe tener 10 dígitos.") | |
return False | |
# Validar que sean números | |
patron = re.compile(r'^[0-9]+$') | |
if not patron.match(telefono): | |
print(f"Error: El número de teléfono solo debe contener números.") | |
return False | |
print(f"Usuario registrado: {nombre} {apellidos}") | |
print(f"Teléfono: {telefono}") | |
print(f"Correo electrónico: {correo}") | |
return True | |
def main(): | |
""" | |
Función principal que registra N nuevos usuarios. | |
""" | |
# Preguntar cuántos usuarios se quieren registrar | |
numero_usuarios = int(input("¿Cuántos usuarios desea registrar?: ")) | |
# Registrar cada usuario | |
for i in range(numero_usuarios): | |
nombre = input(f"Ingrese el nombre del usuario {i + 1}: ") | |
apellidos = input(f"Ingrese los apellidos del usuario {i + 1}: ") | |
telefono = input(f"Ingrese el número de teléfono del usuario {i + 1}: ") | |
correo = input(f"Ingrese el correo electrónico del usuario {i + 1}: ") | |
# Registrar el usuario solo si la información es válida | |
if registrar_usuario(nombre, apellidos, telefono, correo): | |
print("-" * 20) | |
if __name__ == "__main__": | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment