public class Hello {
public static long com(int a,int b)
{
long result=a;
int i;
for(i=1;i<b;i++){
result = result*(a-i)/(b-i+1);
}
return result;
}
public static void main(String[] args)
{
long t;
t=com(10,8);
System.out.print(t);
}
}
이코드 보면 결과가 45가 나와야 할것 같은데 39가 나오네요..; 이유가 뭘까요?
저라면 for(i = 0 ; i < (a - b) ; i++) { (a - i)/(i + 1) } 요걸로
내가 쓴 저 코드 대체 뭐임.. ㅠㅠ 암튼 10C8 = 10C2
10* 9 / 8 해봐 뭐가 나오겠냐. 그런식으로 결과가 틀려지니 답이 틀리게 나오지
여튼 값이 이상하게 나오면 루프에서 하나씩 찍어보면서 하든가