아희 문자열 변환기

아희는 우리의 고유 문자인 한글로 이루어진, 아름다운 프로그래밍 언어입니다. 하지만 한가지 심각한 문제가 있었으니, 바로 쓰기 참 난해하단 것입니다. 이는 실로 안타까운 일입니다. 아직 많은 사람들이 자신의 생각을 아희로 표현하는 것을 힘들어 합니다.

그리하여 저는 아희 문자열 변환기를 만들었습니다. 아희 문자열 변환기는 누구나 자신의 생각을 아희로 표현할 수 있게 도와주는 도구입니다. 프로그래밍을 잘 모르는 사람들도 이제 자신의 생각을 아름답게 표현할 수 있습니다. 이 아희 문자열 변환기와 함께한다면 말이죠.

쉽고 편리하게 아희를 접해보세요. 온라인 아희 문자열 변환기

작동 원리

문자열을 출력하는 아희 코드를 만들기 위해선 2~9까지의 수와 사칙연산을 이용하여 각각의 문자들의 유니코드에 해당하는 수를 만들어야 합니다. 영문은 기껏해야 65~122이니 만들기 쉽지만 한글은 만의 자리수까지 사용하다보니 계산하기 힘들었죠. 그래서 전 4개의 저장공간에 각각 10, 100, 1000, 10000을 저장해두고 각 자리수를 계산한 후 이들을 더하는 방식을 생각하였습니다. 예를들어 가(44032)의 경우 4*10000+4*1000+0+3*10+2로 계산하는거죠.

if (unicodeNumber[i] >= 10000) {    var temp = Math.floor(unicodeNumber[i] / 10000);    if (temp != 1) {        aheuiCode += '사' + randNum(temp);    }    aheuiCode += "살빠싸사" + (temp != 1 ? "따" : "");}if (unicodeNumber[i] >= 1000) {    var temp = Math.floor((unicodeNumber[i] / 1000) % 10);    if (temp != 0) {        if (temp != 1) {            aheuiCode += '사' + randNum(temp);        }        aheuiCode += "삳빠싸사" + (temp != 1 ? "따" : "") + (unicodeNumber[i] >= 10000 ? "다" : "");    }}if (unicodeNumber[i] >= 100) {    var temp = Math.floor((unicodeNumber[i] / 100) % 10);    if (temp != 0) {        if (temp != 1) {            aheuiCode += '사' + randNum(temp);        }        aheuiCode += "산빠싸사" + (temp != 1 ? "따" : "") + (unicodeNumber[i] >= 1000 ? "다" : "");    }}if (unicodeNumber[i] >= 10) {    var temp = Math.floor((unicodeNumber[i] / 10) % 10);    if (temp != 0) {        if (temp != 1) {            if (temp == 0) {                break            }            aheuiCode += '사' + randNum(temp);        }        aheuiCode += "삭빠싸사" + (temp != 1 ? "따" : "") + (unicodeNumber[i] >= 100 ? "다" : "");    }}var temp = Math.floor(unicodeNumber[i] % 10);if (temp != 0) {    aheuiCode += randNum(temp) + (unicodeNumber[i] >= 10 ? "다" : "")}console.log(temp)aheuiCode += "맣";

지금도 잘 작동하지만 아직 완벽하지는 않습니다. 여러가지 개선할 방법들을 생각해보았는데 16진법을 이용한다거나 NFD 정규화 같은 방식도 도입해 가장 짧고 효율적이게 나오는 코드를 만드는 방식을 생각중입니다.

전체 소스코드는 깃허브에서 보실 수 있습니다.

GitHub – kdo9921/String-Aheui-Converter: 아희 문자열 변환기
아희 문자열 변환기. Contribute to kdo9921/String-Aheui-Converter development by creating an account on GitHub.