감 ¶
가
무 다;;;
무 다;;;만 빼;;
- 다 렬 보는데 뭐 그게그같긴다;; 그래 뭔가 리되긴듯;
딩 - 리링 前 ¶
~cpp
#include <stdio.h>
#include <string.h>
#define TRUE 1
#define FALSE 0
int is_int(char c);
void intval(char* from);
int main(int argc, char* argv[])
{
int i;
char jumin[13];
int chk;
while(1)
{
chk=TRUE;
printf("민록 13리 력( '-' ) : ");
scanf("%s",jumin);
//13리
if(strlen(jumin)!=13) chk=FALSE;
//로만 는
for(i=0;i<13;i++)
{
if(!is_int(jumin[i]))
{
printf("만 력 다\n\n");
chk=FALSE;
break;
}
}
//chk true면 다로 감
if(chk) break;
}
intval(jumin);
chk = 0;
for(i=0;i<=7;i++) chk += jumin[i] * (i+2);
for(i=8;i<=11;i++) chk += jumin[i] * (i-6);
chk = 11-chk%11;
if(jumin[12]==chk)
printf("대민국 국민~ ^^ 녕!\n");
else
printf(" ???? -_-;; \n");
return 0;
}
int is_int(char c)
{
int int_c;
int_c=(int)c;
// 값
if(int_c>=48 && int_c<=57) return TRUE;
return FALSE;
}
void intval(char* from)
{
int i;
for(i=0;i<13;i++)
{
*(from) = (int)*(from++) - 48;
}
}
딩 - 리링 後 ¶
~cpp
#include <stdio.h>
#include <string.h>
#define TRUE 1
#define FALSE 0
int is_int(char* c);
void intval(char* from);
void chk_jumin(char* jumin);
int chk_input(char *jumin);
int main(int argc, char* argv[])
{
char jumin[13];
int chk;
while(1)
{
printf("민록 13리 력( '-' ) : ");
scanf("%s",jumin);
chk = chk_input(jumin); // 13리, 로만 구되는 면 TRUE
if(chk) break;//TRUE면 다로 감
}
intval(jumin); //민록를 로 변경
chk_jumin(jumin); //민록
return 0;
}
int is_int(char* c)
{
int int_c, i, chk=TRUE;
int_c=(int)*(c++);
// 값
for(i=0;i<13;i++)
{
if(!(int_c>=48 && int_c<=57)) chk=FALSE;
}
return chk;
}
void intval(char* from)
{
int i;
for(i=0;i<13;i++)
{
*(from) = (int)*(from++) - 48;
}
}
void chk_jumin(char* jumin)
{
int i, chk=0;
for(i=0;i<=7;i++) chk += *(jumin++) * (i+2);
for(i=8;i<=11;i++) chk += *(jumin++) * (i-6);
chk = 11-chk%11;
if(*jumin==chk)
printf("대민국 국민~ ^^ 녕!\n");
else
printf(" ???? -_-;; \n");
}
int chk_input(char *jumin)
{
int chk=TRUE;
if(strlen(jumin)!=13) //13리
chk=FALSE;
else
chk = is_int(jumin); //로만 는
return chk;
}










