파이썬 코드 질문입니다!
본문
주민등록번호를 입력 받아 생년과 성별을 추출하여 “xxxx년생 남자”, 또는 “xxxx년생 여자”라는 결과를 출력하라. 예를 들어 901231–1914983에 대하여 “1990년생 남자”를 출력한다.
l 7번째 문자가 ‘–‘가 아니면, 다시 입력 받는다.
l 2000년 이전과 2000년 이후를 모두 포함해야 한다. 2000년 이전은 성별 코드가 1, 2이고, 2000년 이후는 성별코드가 3, 4이다.
이게 문제고 저는 코드를 짜기전에 먼저 이렇게 설정해보았는데 코드를 어떤식으로 짜야될까요?ㅠㅜㅠ
l 입력 변수
= str1 = 주민등록번호 입력(ex.071203-456789)
l 출력 변수
P1 = ‘19’ + xx + ‘년생’ + 남자, ‘19’ + xx + ‘년생’ + 여자, ‘20’ + xx + ‘년생’ + 남자 ‘20’ + xx + ‘년생’ + 여자
l 처리 방법
While true:
Str1 = 주민등록번호 입력
만약 str1에 7번째 문자가 ‘-‘ 이면 break str[6] == ‘-‘
Year = str1의 앞에 2개 값을 분리해서 저장 str1[0:2]
C= str1의 8번째 수 분리해서 저장 c[7]
If(0<=int(year)<=21): -> 2000sus 이후 출생
C가 3이면 -> 남자 if(c==’3’)
C가 4이면 -> 여자
Else:
C가 1이면 => 남자
C가 2이면 => 여자
답변 1
처리방법 적어두신 것처럼 하면 됩니다.
1. 입력변수받기
2. 7번째 문자-아니면 오류 출력후1번 return
3. 8번째 문자 가져오기
4. 1,3이면 남자 , 2,4면 여자 가 되게 처리