UTF8로 인코딩되어 있는 한글 문장을 아래와 같이 출력하는 프로그램을 작성하시오.
1. 아래 예와 같이 초성만 출력하는 프로그램 (공백 등 한글 이외 문자는 무시)
예) 입력: 이 문장은 한글입니다.
출력: ㅇㅁㅈㅇㅎㄱㅇㄴㄷ
2. 아래 예와 같이 초성/중성/종성을 자소단위로 분리하여 출력하는 프로그램
예) 입력: 이 문장은 한글입니다.
출력: ㅇㅣ ㅁㅜㄴㅈㅏㅇㅇㅡㄴ ㅎㅏㄴㄱㅡㄹㅇㅣㅂㄴㅣㄷㅏ.
3. 위 2번의 자소 단위로 출력한 파일을 입력으로 하여 음절 단위로 조합하여 출력하는 프로그램 작성
<참고 1> UTF8 인코딩 방식 -- UTF16-BE(16비트 정수)로 변환
1110xxxx 10xxxxxx 10xxxxxx --> x부분 16비트를 가져옴
<참고 2> 유니코드에서 초성/중성/종성 계산
- 초성: ((코드값 - 0xAC00) / (28 x 21)) % 19
- 중성: ((코드값 - 0xAC00) / 28) % 21
- 종성: (코드값 - 0xAC00 ) % 28
<참고 3> 초성 19개(0~18), 중성 21개(0~20), 종성 28개(0~27)을 자음, 모음으로 출력
int cho_base=0x1100; // 유니코드 초성 'ㄱ'
int jung_base=0x1161; // 유니코드 중성 'ㅏ'
int jong_base=0x11A8; // 유니코드 종성 'ㄱ'