Está en la página 1de 2

Smart CRUD

Elabora el programa, de tal manera que:


1. La matrícula pueda ingresarse u omitirse.
2. Si la matrícula se ingresa, debe cumplir las siguientes validaciones:
3. Se ser de 7 dígitos.
4. El nombre, primer apellido y segundo apellido, tienen estas validaciones:
5. No se pueden omitir.
6. Deben ser letras latinas en mayú sculas, y espacios.
7. La edad tiene las siguientes validaciones:
8. No se puede omitir.
9. Debe ser un nú mero entero.
10. Debe ser entre 16 y 90.
Al final, yo debo tener un conjunto de variables (matricula, primer_apellido,
segundo_apellido, edad), con datos correctos.
import re
#patrones de matricula, edad, apellidos
p_matricula="^([0-9]{7})$"
p_edad="^([0-9]{2})$"
p_apellidos="([A-Z ])"

#PRIMER APELLIDO
while True:
apellido1=input("Cual es su primer apellido?: ")
if(apellido1==""):
print("El apellido no se puede omitir")
continue
if(not bool(re.match(p_apellidos,apellido1))):
print("El apellido no cumple con el patron")
continue
break

Cual es su primer apellido?: cruz


El apellido no cumple con el patron
Cual es su primer apellido?:
El apellido no se puede omitir
Cual es su primer apellido?: CRUZ

#SEGUNDO APELLIDO
while True:
apellido2=input("Cual es su segundo apellido?: ")
if(apellido2==""):
print("El apellido no se puede omitir")
continue
if(not bool(re.match(p_apellidos,apellido2))):
print("El apellido no cumple con el patron")
continue
break

Cual es su segundo apellido?:


hernandez

El apellido no cumple con el patron


Cual es su segundo apellido?:
El apellido no se puede omitir
Cual es su segundo apellido?: HERNANDEZ

#MATRICULA
while True:
matricula=input("Cual es su matricula?: ")
if (matricula==""):
break
if (not bool(re.match(p_matricula,matricula))):
print("La matricula no cumple con el patron")
continue
break
Cual es su matricula?: 1
La matricula no cumple con el patron
Cual es su matricula?: 5437JHJH
La matricula no cumple con el patron
Cual es su matricula?: 1852292

#EDAD
while True:
str_edad=input("Cual es su edad?: ")
if (str_edad==""):
print("La edad no se puede omitir")
continue
if(not bool(re.match(p_edad,str_edad))):
print("La edad no cumple con el patron")
continue
int_edad=int(str_edad)
if(not(int_edad>16 and int_edad<90)):
print("La edad no esta dentro del rango (mayor a 16 y menor a
90)")
continue
else:
break

Cual es su edad?:
La edad no se puede omitir
Cual es su edad?: 1
La edad no cumple con el patron
Cual es su edad?: 15
La edad no esta dentro del rango (mayor a 16 y menor a 90)
Cual es su edad?: 21

También podría gustarte