1. Combination 출력하는
프로그램
조 장 : 20083472 변세현
작성자 조 원 : 20083519 조경상, 20083430 강승우,
20113293서상현, 20113272 김남희
2. Ⅰ. 프로젝트의 목적
Combination에 대해 배운바를 바탕으로 입력받아서 Combination을출력하는
프로그램을 만들어본다.
Ⅱ . 프로젝트 일정
2012. 4. 16 - 사전조사 및 조원별 업무 분담 결정
2012. 4. 17 - 구현 된 알고리즘을 바탕으로 코딩 시작
Ⅱ. 조원 업무 분담
사전 조사 팀 – 김남희, 강승우, 조경상
프로그래밍 팀 – 변세현, 서상현
Ⅲ. 연구 과정
2012. 4. 16 - 사전조사 및 조원별 업무 분담 결정.
- 새로 배정된 조의 조원들이 수업에 들어가기전에 모여서 새로운 역할분배
및 앞으로 해야할 방향에 대해 토의하였음.
3. 2012. 4. 17 - 구현 된 알고리즘을 바탕으로 코딩 시작
- 계속 조원들끼리 메신저를 통해 이야기를 하며 프로젝트에 대해 알고리즘
구축 및 진행방향 논의를 하며 코딩을 시작하였다.
-완성된 프로그램 소스
#include <stdio.h>
void C(int n, int N, int r, int R, char src[], char result[])
{
if ( r == 0 )
{
int i = 0;
for ( i = 0; i < R - 1; i++ )
{
printf("%c,", result[i]);
}
printf("%cn", result[i]);
return;
}
4. else if ( n < r )
return;
else
{
result[R-r] = src[N-n];
C(n-1, N, r-1, R, src, result);
C(n-1, N, r, R, src, result);
}
}
int main()
{
int i=0;
int r=0;
int j=0;
char arr[20];
char arr2[20];
char tmp[20];
scanf("%s %d",&arr,&r);
for(i=0;i<20;i++)
{
if(arr[i]!='{' && arr[i]!=',')
5. {
if(arr[i]=='}')
break;
arr2[j]=arr[i];
j++;
}
}
C(j, j, r, r, arr2, tmp);
return 0;
}
Ⅳ. 결과 분석 및 느낀 점
다른 프로젝트 같은 경우 2주의 시간이 있어서 시간적 여유가 있었지
만, 이번 프로젝트는 조가 바뀌어서 서로 잘 모르는데 1주 밖이라 여
태 프로젝트처럼 생각해서 조금 빠듯하게 진행이 되었던 것 같다.
그래도 조합에 대해 수학적으로 이해하고 있던 것이 프로그래밍을 통
해서 이산수학적으로 생각할수 있는 기회가 되어서 조원들 모두 좋은
기회가 된 것 같다.