기초프로그래밍 과제인데 정수형 배열 pascal[10][10]을 선언해서 nCr = n! ( r! * (n - r)!)에서 함수 !(콤비네이션)를 사용하지 않고 10행까지 [파스칼의 삼각형]을 저장해서 출력해야함.
그런데 결과가 4행부터 이상하게 나옴.
-----------------------------------
#include <stdio.h>
int main()
{
int pascal[10][10] = { 0 };
int i, j; // pascal[i][j]
int n, r; // nCr = n! / (r! * (n - r)!)
int q, w, e; // n! = n*(n-q)...*2*1
int a, b, c; // n!, r!, (n-r)!
for (i = 0; i <= 9; i++)
{
for (j = 0; j <= 9; j++)
{
if (j == 0 || i == j)
{
pascal[i][j] = 1;
}
else if (j > i)
{
pascal[i][j] = 0;
}
else
{
for (n = 2; n <= i; n++)
{
for (r = 1; r < n; r++)
{
a = n; b = r; c = n - r;
for (q = 1; (a-q) >= 2; q++)
{
a = a * (a - q);
}
for (w = 1; (b - w) >= 2; w++)
{
b = b * (b - w);
}
for (e = 1; (c - e) >= 2; e++)
{
c = c * (c - e);
}
pascal[n][r] = a / (b * c);
}
}
}
}
}
for (i = 0; i <= 9; i++)
{
for (j = 0; j <= 9; j++)
{
printf("%d ", pascal[i][j]);
}
printf("\n");
}
return 0;
}
-----------------------------------
4행부터 왜이럼???
쓰래기들어있는거보니 한번도 대입안된거
w for문에서 b에 곱하기 연산할때 0을 곱해서 그런거 아닐까요? - Ruby
r이 1일때 b에 r을 대입하면 b도 1 - Ruby
그걸 w for문에서 b-w을 하면 0이 나오죠 - Ruby
지금 컴퓨터가 없어서 해볼수가 없으니 한번 해보시고 또 글 올려주세요! - Ruby