IoT를 위한 문제 중심 C++ 프로그래밍
금오공과대학교
이해연 교수
반복문 #1
Day 5:
목차
1. 반복문
A. while
B. do while
C. for
2. 반복문 문제 (while, for)
반복문
1. 어떤 조건을 만족하는 동안에는 반복하여 작업을 수행할 수 있음
A. while
B. do while
C. for
while 문
1. 조건이 참(1)인 동안 ‘명령문’을 반복 실행
2. 일반적으로 반복 횟수가 정해지지 않은 경우 활용
3. while(1) 형태로 무한 반복 수행하며 탈출 시 break 활용
4. 명령문이 많은 경우 중괄호( ‘{’, ‘}’ )로 명령문들을 블록화
5. 조건 연산자 조건
== 좌변과 우변이 같다.
!= 좌변과 우변이 다르다.
> 좌변이 우변보다 크다.
< 좌변이 우변보다 작다
>= 좌변이 우변보다 크거나 같다.
<= 좌변이 우변보다 작거나 같다.
while(조건) {
명령문;
}
while(조건) 1개의 명령문;
for
1. 초기 조건, 반복 조건, 증감문 형태로 구형
2. 일반적으로 반복 횟수가 정해진 경우 활용
for(초기 조건; 반복 조건; 증감문) {
명령문;
}
문제 5.2N 1~100까지의 합을 출력
1. 문제 설명
A. 1부터 100까지의 정수 합을 출력하는 프로그램 구현
2. 구현 조건
A. “int num = 1 + 2 + 3 + … + 100”으로 구현하지 않고 반복문 사용
3. 실행 예
4. 구현 힌트
A. 반복적 값의 합산: sum = sum + value;
프로그램을 직접 구현
- 인터넷, 도서 등 검색
- 스스로 생각하는 사고력 향상
문제 5.0N 구구단 출력
1. 문제 설명
A. 사용자 입력 숫자의 구구단을 출력하는 프로그램 구현
2. 구현 조건
A. 사용자가 입력한 숫자의 단수를 활용
B. while문 및 for문을 사용하여 구현
3. 실행 예
문제 5.0N 구구단 출력
1. 구현 힌트
A. 구구단에서 순차적으로 변화하는 규칙의 패턴을 찾는 것이 중요
B. 반복의 횟수를 정하는 것이 중요 (조건 등)
C. 사용자가 입력한 수는 고정이고 뒤의 숫자가 1 ~ 9까지 순차적 증가
프로그램을 직접 구현
- 인터넷, 도서 등 검색
- 스스로 생각하는 사고력 향상
문제 5.1 10진수 자릿수 구분
1. 문제 설명
A. 사용자가 입력한 숫자를 다음과 같이 자리수 별로 구별하여 출력
2. 구현 조건
A. 역순 출력 시에 공백으로 구분
3. 실행 예
문제 5.1 10진수 자릿수 구분
1. 구현 힌트
A. % 연산자를 이용하여 10으로 나누었을 때 나머지를 활용
B. 1의 자리 제거는 10으로 나누었을 때 몫을 활용
프로그램을 직접 구현
- 인터넷, 도서 등 검색
- 스스로 생각하는 사고력 향상
문제 5.2 두 숫자 사이의 정수 합 계산
1. 문제 설명
A. 사용자로부터 두 정수를 입력받고 작은 수와 큰 수를 찾은 후에 작은 수 부터 큰 수까지의 모든 정수의 합을 계산하는 프로그램 구현
2. 구현 조건
A. 사용자가 입력한 두 정수를 포함하여 계산
3. 실행 예
문제 5.2 두 숫자 사이의 정수 합 계산
1. 구현 힌트
A. 두 값의 교환은 임시 변수 활용
B. 예) num1 num2 temp = num1;
num1 = num2;
num2 = temp;