continue 문, break 문_220704
continue
continue
는 for
, while
안에서만 사용이 가능하다.
continue
는 if
와 같이 쓰이며, if
조건이 만족하는 경우에는 아래 코드를 더 이상 실행하지 않고 다시 위로 올라가 그 다음 for loop
을 실행하게 된다다. continue
는 조건문과 같이 쓰여야 한다.
for (int i = a; i < b; i++) {
코드1
if (조건) {
코드2
continue;
}
코드3
}
i
가 조건에 해당하는 경우에는 코드1 -> 코드2만 수행, i
가 조건에 해당하지 않는 경우에는 코드1 -> 코드3만 수행
친근하지 않은 수
1에서 n 사이의 정수 중 친근하지 않은 수의 개수를 출력하는 프로그램을 작성해보세요. 친근한 수란 2, 3 또는 5로 나누어 떨어지는 수를 의미합니다.
#include <iostream>
using namespace std;
int main(){
int n,result = 0;
cin >> n;
for(int i=1;i<=n;i++){
if(i%2==0 || i%3==0 || i%5==0) continue;
result ++;
}
cout << result;
return 0;
}
특정 조건의 온전수 구하기
1부터 n사이의 수 중 온전수를 출력하는 프로그램을 작성해보세요.
온전수란 다음 조건을 모두 만족하지 않는 수를 뜻합니다.
- 2로 나누어 떨어지는 경우
- 일의 자리가 5인 경우
- 3으로 나누어 떨어지면서 9로는 나누어 떨어지지 않는 수
#include <iostream>
using namespace std;
int main(){
int n;
cin >> n;
for(int i=1;i<=n;i++){
if(i%2==0 || i%10==5 || i%3==0 && i%9!=0) continue;
cout << i <<' ';
}
return 0;
}
조건에 부합하는 수
정수 a 를 입력받아 1부터 a까지의 수 중 다음 조건을 모두 만족하지 않는 수들을 모두 출력하는 프로그램을 작성해보세요.
- 짝수이면서 4의 배수가 아닌 수
- 8로 나눈 몫이 짝수인 수
- 7로 나눈 나머지가 4보다 작은 수
#include <iostream> using namespace std; int main(){ int a; cin >> a; for(int i=1;i<=a;i++){ if(i%2==0 && i%4!=0 || (i/8)%2==0 || (i%7)<4) continue; cout << i <<' '; } return 0; }
break
break
는 for
, while
과 같이 loop 안에서 사용이 가능하다.break
는 if
와 같이 쓰이며, 해당 조건이 만족하는 경우에는 가장 가까이에 있는 loop
을 완전히 탈출하게 된다
1부터의 합
정수 n이 주어졌을 때, 1부터 차례대로 100까지 1씩 증가시키며 합을 구하다가 처음으로 그 합이 n 이상이 되는 순간에 더해진 숫자가 무엇인지를 출력하는 프로그램을 작성해보세요.
#include <iostream>
using namespace std;
int main(){
int n,i,sum_val = 0;
cin >> n;
for(i=1;i<=100;i++){
sum_val += i;
if(sum_val>=n) break;
}
cout << i;
return 0;
}
1부터 곱셈하기
#include <iostream>
using namespace std;
int main(){
int n,i,mul_val = 1;
cin >> n;
for(i=1;i<=10;i++){
mul_val *= i;
if(mul_val>=n) break;
}
cout<<i;
return 0;
}
1까지 나누기
정수 n이 주어졌을 때, n을 차례대로 1, 2, 3, ... 으로 나누었을 때 1 이하가 되는 순간까지 나눗셈을 진행한 총 횟수를 구하는 프로그램을 작성해보세요.
단, 나눗셈 진행시 각 나눗셈 연산에서 몫을 저장합니다.
예제 설명
50 / 1 = 50
50 / 2 = 25
25 / 3 = 8
8 / 4 = 2
2 / 5 = 0
다음과 같은 순서로 진행한다.
#include <iostream>
using namespace std;
int main(){
int n,i,tmp;
cin >> n;
tmp = n;
for(i=1;i<=n;i++){
if((tmp/i)<=1) break;
tmp /= i;
}
cout << i;
return 0;
}