2012. 7. 13. 14:52

#include <stdio.h>

#define MAX 50
//#define MAX1 51

int main() {
        int sum1=0,sum2=0,sum3;
        sum1 = MAX * MAX;
        sum2 = (MAX * MAX)+MAX;
        sum3 = sum1 - sum2;

        printf("공식을 이용한 100까지의 홀수의 합 빼기 짝수의 합 = %d",sum3);
        return 0;
}


--------------------------------------------------------------------------------

#include <stdio.h>

int main() {
        int i,sum=0;
        for (i=1;i<=100;i++) {
                if(i%2 == 1)
                        sum = sum + i;
                else sum = sum - i;
        }
        printf("100까지 홀수의 합 빼기 짝수의 합은 %d\n",sum);
        return 0;
}


---------------------------------------------------------------------------------


합을 이용하는 것은 시그마공식을 이용하면 쉽습니다.

(1) ∑(k=1~n) k = n(n+1)/2

(2) ∑(k=1~n) k² = n(n+1)(2n+1)/6

(3) ∑(k=1~n) k³ = {n(n+1)/2}²


1 부터 2n-1 까지의 홀수의 합은

∑(k=1~n) 2k-1 = 2∑(k=1~n) k - ∑(k=1~n) 1 = n(n+1) - n

= n²

2 부터 2n 까지의 짝수의 합은

∑(k=1~n) 2k = 2∑(k=1~n) k = n(n+1)

= n² + n

Posted by 몰라욧