C++에서 루프(for Loops) 활용하기
- 2021-04-06
- Posted by: Narae Kim
- Categories: 기술자료, 메인 노출
원문 링크: https://learncplusplus.org/learn-to-use-for-loops-in-c/
원문 작성자: Yilmaz Yoru
프로그래밍에서 가장 많이 사용되는 구문 중 하나는 바로 루프문( for() loops ) 입니다. 지정한 조건만큼 프로그램 문장의 반복과 수행을 할 수 있습니다. 필요한 코드 블럭 실행 횟수를 정확하게 알고 있다면, 다른 루프문을 활용하는 것보다 훨씬 더 유용합니다. 범위 내 열을 계산하거나 다양한 요소들이 포함되어 있는 항목을 리스트화 할 때 사용하기도 합니다 (예. 스트링 리스트, 배열, char 배열, 벡터, 스트럭처 배열 등).
for() 함수는 일반적으로 3개의 파라미터와 함께 사용되며 기호 ; 로 구분합니다. 그 중 첫 번째는 초기 선언으로 기본 시작 조건 (예. a=0)을 정의하는 부분입니다. 두 번째는 조건식으로 루프 조건 (예. a<10)을 정의합니다. 여기서 조건은 범위를 제한하는 것입니다. 마지막으로 세 번째 파라미터는 모든 루프에서 루프문의 변화를 정의하는 루프 조건입니다.
1 2 |
for ( initail-expression ; conditional-expression ; loop-expression ) loop statement |
다음과 같이 한 줄로 for() loop를 만들어 볼 수도 있습니다.
1 2 |
int a; for( a=0; a<=10; a++) cout << a << ","; |
for() 파라미터에 변수를 정의할 수도 있습니다.
1 |
for( int a=0; a<=10; a++) cout << a << ","; |
두 줄로 나눠서 표현할 수도 있구요.
1 2 |
for( int a=0; a<=10; a++) cout << a << ","; |
위의 세 가지 예는 모두 동일한 것입니다. 코드 블럭에 한 줄 이상 있으면 대괄호 { 와 } 를 사용해야 합니다.
1 2 3 4 |
for( int a=0; a<=10; a++) { cout << a << ","; } |
루프에서 마지막 파라미터는 문자 ; 를 사용하지 않습니다. for( i=0; i<10; i++ ); 처럼요. 아래는 숫자 0부터 10까지를 출력하는 예제입니다. 0, 1, 2, 3, 4, 5, 6 7, 8, 9, 10 이 출력됩니다.
1 2 3 4 |
for( int a =0; a<=10; a++) { cout << a << ","; } |
아래 코드는 0부터 10 사이의 짝수를 출력하는 코드입니다. 0, 2, 4, 6, 8, 10이 출력됩니다.
1 2 3 4 5 |
for ( int a=0; a<=10; a+=2 ) { cout << a << ","; } |
a+=2 항 대신 = a+2 를 사용할 수도 있지만, 더 느려질 수 있다는 걸 기억해두세요.
1 2 3 4 5 |
for ( int a=0; a<=10; a=a+2 ) { cout << a << ","; } |
다음은 1부터 9 사이의 홀수를 출력하는 샘플입니다. 1, 3, 5, 7, 9가 출력됩니다.
1 2 3 4 5 |
for ( int a=1; a<=9; a+=2 ) { cout << a << ","; } |
다음과 같이 코드를 작성할 수도 있습니다. 출력되는 결과값은 위와 동일합니다.
1 2 3 4 5 |
for ( int a=1; a<=9; a=a+2 ) { cout << a << ","; } |
현대식 C++의 고급 기능 활용법과 표준 루프문 에 대한 더욱 자세한 내용은 다음 링크를 통해 확인할 수 있습니다:
https://learncplusplus.org/general-loop-statements-in-modern-c/
C++빌더로 위에서 다룬 루프문을 활용해보세요! C++빌더만 있다면, 훨씬 더 적은 코드로 윈도우용 앱 개발 시간이 1/10로 줄어듭니다:
https://devgear.co.kr/archives/products/cbuilder
12.0 12.1 AI AWS C++ c++빌더 chatgpt DelphiCon ios rad서버 RAD스튜디오 UI UIUX UX uxsummit vcl 개발 개발사례 고객사례 기술레터 기술백서 데브옵스 데이터 데이터베이스 델파이 리눅스 마이그레이션 맥 머신러닝 모바일 새버전 샘플 세미나 안드로이드 웹 윈도우 인공지능 인터베이스 출시 커뮤니티에디션 코드 클라우드 파이썬 파이어몽키 현대화