-
[C] while문으로 1부터 100구하기, 반복조건 count <101일까? count == 100일까?언어/C 2024. 5. 30. 10:20
네이버 부스트캠프 웹&모바일 코딩테스트 유형 Q.2 조건식
문제를 먼저 풀어보고 오세요.
int sum = 0; int count = 1; while ( ) // 빈칸이 조건에 해당될 동안 반복하기 { sum = sum + count; count ++; }
1. count < 101
2. count == 100
3. count != 100
4. count < 99
5. count < 100
정답은 뭘까?
.
.
.
.
.
.
.
.
.
.
1번이다.
근데 나는 2번이라고 했다. 왜 그렇게 했을까?
당연히 1부터 100까지 의 합이니, count == 100이라고 생각없이 했다. ( 지금 생각하면 ㅜㅜ, 그래도 시험 전 이니 ! 다행)
우선while ( ) <- 소괄호안에는 1이상의 숫자가 들어가면 참, 혹은 조건문이 들어갈 수 있다.
여기서 2번인 count == 100을 하게 되면 while문에서는 count 값이 100일 때만 작동 하는 것이다.
따라서 count 의 초기값이 1이기 때문에 처음부터 이 조건을 만족하지 않아서 반복문이 한 번도 실행되지 않을 것이다..3번은 왜 안될까?
프로그래밍에서 ! 는 부정의 의미로 쓰인다. 따라서 count != 100 이면 count 가 100이 아닐때, 작동한다.
이렇게 되면 1부터 계속 더하겠지만, 100일 때는 작동을 안하니 1부터 100까지 더할 수 없다.
4번은 왜 안될까?
1부터 99까지의 합을 구하니 안되는 것이다.
'언어 > C' 카테고리의 다른 글
[C] 포인터 (0) 2024.10.05 [C] 문자열 저장 : 메모리구조 (0) 2024.05.30 [C] boostcamp 코딩테스트 유형 Q.5 (0) 2024.05.30 [C] boostcamp 코딩테스트 유형 Q.4 (0) 2024.05.30