C++ ¶
ëŠ�ë‚€ì � ¶
ê°€ê²Œë³´ê³ ì§‘ì—�왔는ë�° ë˜� 가게보러 가야한다..ã… .ã…œ
후딱 ìž‘ì„±í•˜ê³ ê°€ëŠ” 소스~
아��가 주�� 부�해서 달아놓았다.^^
주ì„�ì�„ 다니까 조금 ë„ˆì €ë¶„í•´ì„œ ë‘�개다 ì˜¬ë ¸ë‹¤.^^
후딱 ìž‘ì„±í•˜ê³ ê°€ëŠ” 소스~
아��가 주�� 부�해서 달아놓았다.^^
주ì„�ì�„ 다니까 조금 ë„ˆì €ë¶„í•´ì„œ ë‘�개다 ì˜¬ë ¸ë‹¤.^^
//ì¶œë ¥ë¬¸ìž�ì—´ 센스있다...누가 ìƒ�ê°�한거지?ã…Ž
그런� �야.ㅎㅎㅎ
나 ì�´ê±° ë§Œë“¤ê³ ë‚˜ì„œ 알아챘는ë�°, 귀찮아서 ì•ˆê³ ì³¤ë�”니.. 아무ë�„ 없어~!!
혹시 13월� 태어나거나 50�쯤 태어나거나 뒷�리가 7쯤으로 시작하시는분??ㅎㅎㅎ
빨리 다들 ê³ ì¹˜ë�¼êµ¬..ã…Žã…Žã…Ž
ì•„ ê·¸ë¦¬ê³ ì§€ê¸ˆ ê³ ì¹œì†ŒìŠ¤ì—�ë�„ ë¬¸ì œì �ì�´ 있다우..ã…Žã…Žã…Ž
ë�게~ 알아맞춰ë´�..ã…Žã…Ž(알지만 귀차니즘때문ì—� ì•ˆê³ ì¹˜ê³ í€´ì¦ˆë¡œ 내버리는 쎈쑤!ã…Žã…Ž)
나 ì�´ê±° ë§Œë“¤ê³ ë‚˜ì„œ 알아챘는ë�°, 귀찮아서 ì•ˆê³ ì³¤ë�”니.. 아무ë�„ 없어~!!
혹시 13월� 태어나거나 50�쯤 태어나거나 뒷�리가 7쯤으로 시작하시는분??ㅎㅎㅎ
빨리 다들 ê³ ì¹˜ë�¼êµ¬..ã…Žã…Žã…Ž
ì•„ ê·¸ë¦¬ê³ ì§€ê¸ˆ ê³ ì¹œì†ŒìŠ¤ì—�ë�„ ë¬¸ì œì �ì�´ 있다우..ã…Žã…Žã…Ž
ë�게~ 알아맞춰ë´�..ã…Žã…Ž(알지만 귀차니즘때문ì—� ì•ˆê³ ì¹˜ê³ í€´ì¦ˆë¡œ 내버리는 쎈쑤!ã…Žã…Ž)
소스 ¶
~cpp
#include <iostream>
#include <conio.h>
using namespace std;
const int BACK_SPACE=8;
const int CHAR_TO_NUMBER=48;
void main()
{
cout << "주민등ë¡�번호를 '-'ì—†ì�´ ìž…ë ¥í•´ì£¼ì„¸ìš”>>";
int cursur=0;
int input_number[13];
while (cursur<13)
{
char number;
number=getche();
if (47<number && number<58)
{
number-=CHAR_TO_NUMBER;
if (12==cursur)
{
int sum=0;
for (register int i=0; i<12; ++i)
sum+=input_number[i];
if ((11-sum%11)%10==number)
cout << "\nëŒ€í•œë¯¼êµ êµë¯¼ì�´ë„¤ìš”~ ^^ 안녕하세요!\n";
else
cout << "\n혹시 간첩???? -_-;;\n";
}
else input_number[cursur]=number*(cursur%8+2);
++cursur;
}else if (BACK_SPACE==number)
{
cout << " \b";
--cursur;
}
}
}
ìˆ˜ì •í–ˆì–´ìš”.^^ ¶
~cpp
#include <iostream>
#include <conio.h>
using namespace std;
const int BACK_SPACE=8;
const int CHAR_TO_NUMBER=48;
void main()
{
cout << "주민등ë¡�번호를 '-'ì—†ì�´ ìž…ë ¥í•´ì£¼ì„¸ìš”>>";
int cursur=0;
int put_num[13];
while (cursur<13)
{
char number;
number=getche();
if (47<number && number<58)
{
number-=CHAR_TO_NUMBER;
if (12==cursur)
{
int sum=0;
for (register int i=0; i<12; ++i)
sum+=put_num[i]*(i%8+2);;
if ((11-sum%11)%10==number && put_num[2]*10+put_num[3]<13 && put_num[4]*10+put_num[5]<32 && put_num[6]<3)
cout << "\nëŒ€í•œë¯¼êµ êµë¯¼ì�´ë„¤ìš”~ ^^ 안녕하세요!\n";
else
cout << "\n혹시 간첩???? -_-;;\n";
}
else put_num[cursur]=number;
++cursur;
}else if (BACK_SPACE==number)
{
cout << " \b";
--cursur;
}
}
}
주ì„�ë²„ì „ ¶
~cpp
#include <iostream>
#include <conio.h>
using namespace std;
const int BACK_SPACE=8;
const int CHAR_TO_NUMBER=48;
void main()
{
cout << "주민등ë¡�번호를 '-'ì—†ì�´ ìž…ë ¥í•´ì£¼ì„¸ìš”>>"; //안내문ì�„ ì¶œë ¥í•œë‹¤.
int cursur=0; //현재 커서ì�˜ 위치를 ì €ìž¥í•œë‹¤.
int input_number[13];
while (cursur<13) //13ê°œì�˜ 키를 ìž…ë ¥ë°›ëŠ”ë‹¤.
{
char number;
number=getche();
if (47<number && number<58) //ìž…ë ¥ë°›ì�€ ê°’ì�´ 숫ìž�ì�¸ì§€ 확ì�¸í•œë‹¤.
{
number-=CHAR_TO_NUMBER;
if (12==cursur)//마지막 값�지를 확�한다.
{
int sum=0;
for (register int i=0; i<12; ++i)
sum+=input_number[i]; //숫�를 다 �한다.
if ((11-sum%11)%10==number) //올바른 주민번호�지를 확�한다.
cout << "\nëŒ€í•œë¯¼êµ êµë¯¼ì�´ë„¤ìš”~ ^^ 안녕하세요!\n";
else
cout << "\n혹시 간첩???? -_-;;\n";
}
else input_number[cursur]=number*(cursur%8+2); //알맞ì�€ ê°’ì�„ 곱한 숫ìž�를 ì €ìž¥í•œë‹¤.
++cursur; //기억� 커서� 위치를 오른쪽으로 한칸 옮긴다.
}else if (BACK_SPACE==number) //ìž…ë ¥ë°›ì�€ ê°’ì�´ 백스페ì�´ìФì�¸ì§€ 확ì�¸í•œë‹¤.
{
cout << " \b"; //ì�´ì „ 문ìž�ì—´ì�„ ì‚ì œí•œë‹¤.
--cursur; //기억� 커서� 위치를 왼쪽으로 한칸 옮긴다.
}
}
}
Erlang ¶
ëŠ�ë‚€ì � ¶
2007ë…„ 대예언. RORì�„ 한다는 것보다 Erlangì�„ 한다는 것ì�´ ë�” 섹시하게 ë³´ì�¼ 것ì�´ë‹¤. (타겟ì�´ ìƒ�당히 다르긴 하지만) -- 김창준 ì„ ë°°ë‹˜
나 섹시해지는건가 -_ -ㅎ
나 섹시해지는건가 -_ -ㅎ
Erlang� 조금 � �숙해 졌다 -_ -ㅎ
코드 ¶
* pr_6.erl
-module(pr_6). -export([checkNum/1]). mulAndSum([], []) -> 0; mulAndSum([FirstOne|RemainOne], [FirstAnother|RemainAnother]) -> FirstOne * FirstAnother + mulAndSum(RemainOne, RemainAnother). sumList([], []) -> []; sumList([FirstOne|RemainOne], [FirstAnother|RemainAnother]) -> [FirstOne + FirstAnother] ++ sumList(RemainOne, RemainAnother). checkNumSub(List) -> 11 - (mulAndSum(List, [2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5, 0]) rem 11) == lists:last(List). checkNum(List) -> checkNumSub(sumList(List, lists:duplicate(13, -48))).
* shell
62> c(pr_6).
{ok,pr_6}
65> c(pr_6).
{ok,pr_6}
66> pr_6:checkNum("2222222222222").
false
67> pr_6:checkNum("2222222222223").
false
68> pr_6:checkNum("2222222222224").
false
69> pr_6:checkNum("2222222222225").
true










