숫자 3으로 나누어서 짝수 인지 홀수 인지 확인하는 코드
숫자 2로 하는 것은 너무 진부해서 3으로 해봤다.
# include <stdio.h>
void CuntRoll(int* number);
void Fun_3x(int** number);
void Fun_3x1(int** number);
void Fun_3x2(int** number);
int main (void) {
int number = 0;
printf("input : ");
scanf("%d", &number);
CuntRoll(&number);
return 0;
}
void CuntRoll(int* number) {
if( (*number)%3 == 0 ) {
// case 1)
// 0, 3, 6, 9, 12, 15, ...
Fun_3x(&number);
}
else if( (*number)%3 == 1 ){
// case 2)
// 1, 4, 7, 10, 13, 16, ...
Fun_3x1(&number);
}
else { // (*number)%3 == 2
// case 3)
// 2, 5, 8, 9, 12, 15, ...
Fun_3x2(&number);
}
} // end of CountRoll function
void Fun_3x(int** number) {
int count = -1;
int i; // index
for(i = 0; ;i++) {
count = (count+1)%2; // 0, 1, 0
if((3*i+0) == (**number)) {
break;
}
}
if (count == 0) {
printf("%d is Even_number \n", (**number));
}
else {
printf("%d is Odd__number \n", (**number));
}
}
void Fun_3x1(int** number) {
int count = -1;
int i; // index
for(i = 0; ;i++) {
count = (count+1)%2; // 0, 1, 0
if((3*i+1) == (**number)) {
break;
}
}
if (count == 1) {
printf("%d is Even_number \n", (**number));
}
else {
printf("%d is Odd__number \n", (**number));
}
}
void Fun_3x2(int** number) {
int count = -1;
int i; // index
for(i = 0; ;i++) {
count = (count+1)%2; // 0, 1, 0
if((3*i+2) == (**number)) {
break;
}
}
if (count == 0) {
printf("%d is Even_number \n", (**number));
}
else {
printf("%d is Odd__number \n", (**number));
}
}
'언어 > c언어' 카테고리의 다른 글
ver1 행렬 연산 + 메모리해제 (0) | 2016.10.02 |
---|---|
http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=261614460 (1번문제) (0) | 2016.10.01 |
로또 (3개짜리) (0) | 2016.09.02 |
affine (85% 완성본) (100%완성본은 올리지 않겠다.) (0) | 2016.08.28 |
네이버 답변준것 소수 출력 (0) | 2016.07.31 |