continue 연습문제
추천 자료: ASP.NET Core 인증 및 권한 부여
연습문제: 3의 배수 제외한 수의 합 구하기
1부터 입력받은 수 N까지의 수에서 3의 배수를 제외한 수의 합을 구하는 프로그램을 작성하세요.
테스트 케이스 예제
표준 입력:
5
표준 출력:
12
테스트 케이스 예제
표준 입력:
100
표준 출력:
3367
코드: judge_continue.c
#define _CRT_SECURE_NO_WARNINGS // scanf 보안 경고로 인한 컴파일 에러 방지
#include <stdio.h>
int main(void)
{
int sum = 0; // 1~n까지 정수 중 3의 배수를 제외한 수의 합 보관
int n; // 입력 받은 수까지 범위 지정
scanf("%d", &n);
for (int i = 1; i <= n; i++) // 1부터 n까지 반복
{
if (i % 3 == 0) // 3의 배수이면
{
continue; // 3의 배수이면 변화식(i++) 코드로 이동
}
sum += i; // 실행문
}
printf("%d\n", sum);
return 0;
}
결과
테스트 케이스 예제
표준 입력:
3
표준 출력:
3
테스트 케이스 예제
표준 입력:
50
표준 출력:
867
테스트 케이스 예제
표준 입력:
1000
표준 출력:
333667
해설
for 반복문을 사용하여 인덱스 변수 i는 1부터 n까지 반복합니다.
for 반복문에서 continue
를 만나면 나머지 실행문을 실행하지 않고 변화식(i++
)으로 이동합니다.
if (i % 3 == 0) { continue; }
코드에 의해서 i가 3의 배수일 때 continue
를 만나서 이후의 실행문을 실행하지 않고 변화식으로 넘어갑니다.
for 반복문을 다 반복하고나면 3의 배수를 제외한 수의 합만 sum
변수에 저장됩니다.
추천 자료: .NET Blazor에 대해 알아보시겠어요? .NET Blazor 알아보기를 확인해보세요!