369 게임 박수 횟수

Yun Young Choi·2022년 6월 15일

CodingTest-C

목록 보기
1/15
post-thumbnail


말 그대로 369게임의 박수 횟수를 구하는 프로그램 작성하기


//전체 코드
//solution 함수
int solution(int number) {
	int count = 0;
	for (int i = 1; i <= number; i++) {
		int current = i;
		while (current != 0) {
			if (//빈칸)
				count++;
			current /= 10;
		}
	}
	return count;
}

//main
int main() {
    int number = 40;
    int ret = solution(number);

    printf("solution 함수의 반환 값은 %d 입니다.\n", ret);
}

369 게임

369게임에서 3, 6, 9가 나올 때 박수를 쳐야 한다. 여기서 박수 횟수를 구해야 하므로

어떤 수에서 나눈 수가 3, 6, 9가 나오면 박수 횟수를 1씩 더해야 한다.


main 함수 / 설명

int main() {
    int number = 40;
    int ret = solution(number);

    printf("solution 함수의 반환 값은 %d 입니다.\n", ret);
}
  1. number에 40이라는 값을 할당
  2. ret에 solution 함수를 할당하여 매개변수로 number를 넘김
  3. 정수 타입으로 ret 출력!

solution 함수 / 설명

int solution(int number) {
	int count = 0;
	for (int i = 1; i <= number; i++) {
		int current = i;
		while (current != 0) {
			if (//빈칸)
				count++;
			current /= 10;
		}
	}
	return count;
}
  1. number를 매개변수로 받는다.
  2. count에 0을 할당
  3. 반복문으로 1부터 number와 같을 때까지 current에 i값 할당
  4. current가 0이 아닐 때까지 반복
  5. if 조건에 만족이 되면 count를 1씩 증가
  6. 자릿수를 줄이기 위해 current /= 10 사용
    (current = current / 10)
    만약 current가 두 자리 수인 30이면 10을 나눠서 한 자리수인 3으로 만듦!

빈칸 채우기

빈칸의 조건, 369게임의 규칙을 따라 3, 6, 9가 나오면 박수를 치도록 해야한다.
count(박수)++를 하려면 나머지가 number % 10 == 3 또는 6 또는 9가 나와야 한다.
그렇다면 빈칸에는

if(current % 10 == 3 || current % 10 == 6 || current % 10 == 9) 

코드 합본

int solution(number) {
	
    int count = 0;
    for(int i = 1; i <= number; i++) {
    	int current = i;
        while(current != 0) {
         if(current % 10 == 3 || current % 10 == 6 || current % 10 == 9) 
         	count++;
         }
         current /= 10;
        }
     }

	return count;
}

int main () {
	
    int number = 40;
    int ret = solution(number);
    
    printf("solution 함수의 반환값은 %d 입니다.\n", ret);

}

profile
안냥하세요

0개의 댓글