|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=3384 [복사]
1. 조합을 구하는 프로그램을 짜라
#include<stdio.h>
int main()
{
int k;
int n, r;
int ncr;
while(1)
{
printf("Enter two numbers n and r (but, n >= r) :");
scanf("%d %d",&n,&r);
if( n < r)
break;
if(r == 0 || n == r)
printf("n C r = 1\n");
else
{
for( k = 1, ncr = 1 ; k <= r ; k++)
{ ncr = ncr * ((n - k + 1) / k);
}
printf("n C r = %d\n",ncr);}
}
printf("Error : n is less than r, End Program");
return 0;
}
이게 일단 제 과제물인데 뭐랄까 코드가 더럽네요.. ㅋㅋ 더 간결하게 할수 있는 방법이 있을까요?
그리고 두번쨰 문제입니다.
n = 0 ~ n = 12 까지로 구성된 파스칼의 삼각형이 출력되도록 프로그램
을 작성하시오. 단, 아래와 같이 출력의 줄맞춤이 되도록 출력문을 작성
하여야 함. (프로그램을 작성할 때에는 n이 임의의 정수일 때에도 동작
하도록 범용적으로 하고 결과만 n=12인 경우를 실행하여 보여줄 것)
하고 아래 결과가
1
1 2 1
1 3 3 1
1 4 6 4 1
이런식으로 12까지 배열이 되있네요
조합을 구하는 프로그램은 여자처자 짯는데 저 프로그램의 경우는 저 빈칸이 문제네요;;
n을 입력받아서 r을 루프안에서 0~n까지 돌리는 프로그램 같은데.. ㅠ
빈칸!!! 으아아아아아앙 ㅠ 도와주셔요 |
Hit : 5648 Date : 2012/04/08 08:59
|