[문제 4/9]
1-100 까지의 홀수 합을 구하시오.(단, 3의 배수와 5의 배수 제외)
1. System chart
2. 수작업의 이해
3. 처리 과정
5. NS-Chart
6. NS-Chart 검토표
7. 소스화
8. 결과
1-100 까지의 홀수 합을 구하시오.(단, 3의 배수와 5의 배수 제외)
1. System chart
2. 수작업의 이해
숫자 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
… |
홀수판단 |
○ |
× |
○ |
× |
○ |
× |
○ |
… |
3의 배수가 아닌가 |
○ |
○ |
× |
○ |
○ |
× |
○ |
… |
5의 배수가 아닌가 |
○ |
○ |
○ |
○ |
× |
○ |
○ |
… |
합 |
1 |
1 |
1 |
1 |
1 |
1 |
8 |
… |
1. 100번 반복한다.
1.1 수를 센다.
1.2 홀수인지 판단한다.
1.2.1 3의 배수인지 판단한다.
1.2.2 5의 배수인지 판단한다.
1.2.3 합을 구한다.
2. 합을 출력한다.
3. 끝낸다.
number |
입력받을 숫자 |
정수형 |
plus |
양수 count |
정수형 |
odd |
음수 count |
정수형 |
even |
짝수 count |
정수형 |
minus |
홀수 count |
정수형 |
remainder |
나머지 |
정수형 |
i |
반복제어변수 |
정수형 |
5. NS-Chart
6. NS-Chart 검토표
|
초기 |
|
|
|
|
|
|
|
|
number |
? |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
… |
sum_odd |
0 |
1 |
|
|
|
|
|
8 |
… |
tree_remainder |
? |
1 |
|
0 |
|
2 |
|
1 |
… |
five_remainder |
? |
1 |
|
3 |
|
0 |
|
2 |
… |
remainder |
? |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
… |
i |
? |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
… |
7. 소스화
#include <stdio.h> #define MAX 100 typedef unsigned short UShort; UShort GetSumOdd (void); void Display (UShort sum_odd); int main (int argc, char *argv[]) { UShort sum_odd; sum_odd = GetSumOdd ( ); Display (sum_odd); return 0; } UShort GetSumOdd (void) { UShort sum_odd = 0; UShort number, tree_remainder, five_remainder, remainder, i; for(i=1 ; i <= MAX ; i++) { number = i; remainder = number % 2; if(remainder==1) { tree_remainder = number % 3; five_remainder = number % 5; if(tree_remainder != 0 && five_remainder != 0) { sum_odd += number; } } } return sum_odd; } void Display (UShort sum_odd) { printf ("%d\n", sum_odd); }
8. 결과
'About Programing > 02. 준비운동' 카테고리의 다른 글
C언어의 간단한 예제를 설계부터 코드화까지 (3/9) (2) | 2009.12.09 |
---|---|
C언어의 간단한 예제를 설계부터 코드화까지 (2/9) (12) | 2009.08.20 |
C언어의 간단한 예제를 설계부터 코드화까지 (1/9) (2) | 2009.07.15 |