'''
1. 화면에서 주민등록번호를 000000-0000000 형태로 입력받는다.
주민등록번호 뒷자리의 첫 번째 숫자는 성별을 나타낸다.
주민등록번호에서 성별을 나타내는 숫자를 조회하여
성별을 나타내는 숫자가 1,3 이면 남자로 2,4면 여자로 출력한다.
그외는 내국인아님으로 출력한다.
-이 없는 경우는 '주민번호 입력오류' 출력하기
'''
jumin = input("00000-000000 형태로 주민번호를 입력하세요")
try :
index = jumin.index("-")
gender = jumin[index+1:index+2]
if (gender == '1' or gender == '3'):
print("남자")
elif (gender =='2' or gender =='4'):
print("여자")
else :
print("내국인 아님")
except :
print("주민번호 입력 오류")
'''
2. 소문자와 숫자로 이루어진 문자를 암호화 하고 복호화 하는 프로그램 작성하기
원래 문자 : a b c d e f g h i j k l m n o p q r s t u v w x y z
암호 문자 : ` ~ ! @ # $ % ^ & * ( ) - _ + = | [ ] { } ; : , . /
원래 숫자 : 0 1 2 3 4 5 6 7 8 9
암호 숫자 : q w e r t y u i o p
[결과]
문자를 입력하세요
원문 : abc123
암호화
`~!wer
복호화
abc123
'''
den = "abcdefghijklmnopqrstuvwxyz0123456789"
cen = "`~!@#$%^&*()-_+=|[]{};:,./qwertyuiop"
src = input("문자를 입력하세요.")
result = ""
for i in range(0,len(src)):
for d in range(0,len(den)):
if src[i] == den[d]:
result += cen[d]
break
print("암호화")
print(src,'=',result)
src = result
result = ""
for i in range(0,len(src)):
for d in range(0,len(cen)):
if src[i] == cen[d]:
result += den[d]
print("복호화")
print(src,'=',result)
'''
3. 16진수를 입력하면 16진수 인지 아닌지 판단하여
16진수가 맞으면 10진수로 변경하기.
16진수가 아닌 경우 16진수 아님을 출력하기
'''
num16 = input("16진수 입력 :")
able16=True
for i in range(0,len(num16)):
num = num16[i]
if ('0'<=num and num<='9') or ('a' <= num and num <= 'f') \
or ('A' <= num and num <= 'F'):
print(end="")
else :
print(num16,"문자는 16진수 문자가 아닙니다")
able16 = False
break
if able16 :
print(num16,"=",int(num16,16))
num16 = input("16진수 입력 :")
try :
num10 = int(num16,16)
except ValueError:
print(num16,"는 16진수가 아닙니다.")
else :
print(num16,"의 10진수:",num10)
'Python' 카테고리의 다른 글
Python - 모듈 (0) | 2021.06.16 |
---|---|
Python - Class (0) | 2021.06.16 |
Python - 예외 처리 (except) (0) | 2021.06.15 |
Python - 함수/입력 연습 문제(피보나치 수열, 홀수 짝수 문제) (0) | 2021.06.15 |
Python - 반환값 return (0) | 2021.06.14 |