본문 바로가기
정보처리기사

정보처리기사 - 알고리즘 C언어로 작성하기

by 구월에작은섬 2018. 6. 22.

1부터 100까지의 합 구하기



1
2
3
4
5
6
7
8
9
10
11
//1부터 100까지 합 구하기
#include <stdio.h>
int main(void){
    int sum=0;
    for(int i=1; i<=100;i++){
        
        sum+=i;
    }
    printf("%d",sum);
    return 0;
}
cs



1부터 100까지 짝수의 합



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//A Type. 1부터 100까지 짝수의 합
#include <stdio.h>
int main(void){
    int sum=0;
    for(int i=0; i<100;){
        i=i+2;
        sum+=i;
        
    }
    printf("%d",sum);
    return 0;
}
 
//B Type. 1부터 100까지 짝수의 합(Mod:나머지 함수사용)
#include <stdio.h>
int main(void){
    int sum=0;
    for(int i=0; i<100;){
        i=i+1;
        if (i%2==0){
            sum+=i;
        }
    }
    printf("%d",sum);
    return 0;
}
cs


1부터 100까지 홀수 제곱의 합



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//Type Mode함수 이용.
#include <stdio.h>
int main(void){
    int h=0;
    for (int n=0; n<99;){
        n=n+1;
        if(n%2!=0){
            h=h+n*n;
        }
    }
    printf("%d",h);
    return 0;
}
 
//Type SW 변수 이용
#include <stdio.h>
int main(void){
    int h=0;
    int sw=0;
    for (int n=0; n<99;){
        n=n+1;
        if(sw==0){
            h=h+n*n;
            sw=1;
        }else if (sw!=0){
            sw=0;
        }
    }
    printf("%d",h);
    return 0;
}
cs


합계 구하기 : 1+2+4+7+11+16+... (10회까지)



1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main(void){
    int n=1;
    int h=1;
    for(int k=0; k<9;){
        k=k+1;
        n=n+k;
        h+=n;
    }
    printf("%d\n",h);
}
cs


1/2+2/3+3/4+4/5...+49/50의 합계구하기



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
int main(void){
    
    float h=0;
    
    int i=0;
    
    for (i=0; i<49;){
        
        i=i+1;
        
        h = h + (i / (float)(i + 1)); 
        
    }
    
    printf("%f",h);
    
    return 0;
    
}
cs


피보나치 수열 합계 구하기


1 + 1 + 2 + 3 + 5 + 8 + 13 + ......



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<stdio.h>
int main(void){
    int a=1;
    int b=1;
    int y=2;
 
    for(int n=2;n<10;n++){
        int c=a+b;
        y=y+c;
        if(n<10){
            a=b;
            b=c;
        }
    }
    printf("%d",y);
    return 0;
}
cs