Untitled
unknown
plain_text
2 years ago
2.2 kB
6
Indexable
"""
************************************************************************
nazwa funkcji: __sprawdz_plec
opis funkcji: Funkcja ,która na podstawie 10 pozycji numeru
PESEL sprawdza płeć
parametry: pesel: typ string - 11 cyfrowy numer PESEL
zwracany typ i opis: Funkcja zależnie od wyniku zwraca płeć w typie
string.
K - Kobieta
M - Mężczyzna
************************************************************************
"""
def __sprawdz_plec(pesel:str):
informacja:int=int(pesel[9])
if informacja%2==0:
return "K"
elif informacja%2!=0:
return "M"
"""
************************************************************************
nazwa funkcji: __sprawdz_suma_kontrolna
opis funkcji: Funkcja sprawdzająca poprawność numeru PESEL na
podstawie algorytmu obliczenia cyfry kontrolnej/
parametry: pesel: typ string - 11 cyfrowy numer PESEL
zwracany typ i opis: Funkcja zwraca wartość logiczną True lub False
zależnie od tego czy cyfra kontrolna numeru
PESEL zgadza się z wynikiem algorytmu
************************************************************************
"""
def __sprawdz_suma_kontrolna(pesel:str):
cyfra_kontrolna:int=int(pesel[10])
wagi = '1379137913'
S:int=0
for i in range(0,10):
tmp:int=int(pesel[i])*int(wagi[i])
S+=tmp
M:int=S%10
if(M==0):
R:int=0
else:
R:int=10-M
if(cyfra_kontrolna==R):
return True
else:
return False
pesel=(input("Podaj pesel:"))
if(len(pesel) > 11):
pesel=pesel[:11]
print(f"Wprowadzony PESEL: {pesel}")
if __sprawdz_plec(pesel) == "M":
print("Mężczyzna")
elif __sprawdz_plec(pesel) == "K":
print("Kobieta")
if __sprawdz_suma_kontrolna(pesel) == True:
print("Zgodność sumy kontrolnej numeru PESEL")
else:
print("Niezgodność sumy kontrolnej numeru PESEL")
Editor is loading...
Leave a Comment