11번 문제 해설에서
맨마지막줄
※ i가 2가되었을때 i--를 수행하면 i는 1이된다고 햇는데 여기까진이해가가요
그런데 그전에 while 조건에서 i>1 이기 때문에 i가1일때는 합에 값이 합쳐지면 안되는거 아닌가요..? ㅜㅜ
조건에 만족하지않으면 그 밑에있는 반복문들은 실행하지 않아야하는거아닌가요..?
조건에 맞지않는 i가 1인데 나머지1로 hap에 합쳐지는게 이해가안가요ㅠㅠ
안녕하세요 길벗수험서 운영팀입니다.
i가 2일때
2번 - while 조건이 참이므로 3번으로 갑니다.
4번 - i가 1 감소해 i=1이 됩니다.
5, 6번 - if 조건이 참이므로 hap에 1이 더해집니다.
7번 - 2번으로 돌아갑니다.
2번 - while 조건이 거짓(1>1)이므로 8번으로 이동합니다.
이와 같은 순서를 통해 1이 hap에 더해집니다.
코드를 순서대로 따라가세요.
i가 1이 된 때 바로 while의 조건식을 만나 while문을 벗어나는 것이 아닌 5,6번을 수행한 후에 while 조건식을 만나 while문을 벗어납니다.
행복한 하루되세요 :)
-
관리자2020-04-16 11:27:05
안녕하세요 길벗수험서 운영팀입니다.
i가 2일때
2번 - while 조건이 참이므로 3번으로 갑니다.
4번 - i가 1 감소해 i=1이 됩니다.
5, 6번 - if 조건이 참이므로 hap에 1이 더해집니다.
7번 - 2번으로 돌아갑니다.
2번 - while 조건이 거짓(1>1)이므로 8번으로 이동합니다.
이와 같은 순서를 통해 1이 hap에 더해집니다.
코드를 순서대로 따라가세요.
i가 1이 된 때 바로 while의 조건식을 만나 while문을 벗어나는 것이 아닌 5,6번을 수행한 후에 while 조건식을 만나 while문을 벗어납니다.
행복한 하루되세요 :)
-
관리자2020-04-16 13:36:13
안녕하세요 길벗수험서 운영팀입니다.
예, 이해하신 것이 맞습니다.
후치연산은 하나의 식 내에서만 후치와 전치가 구분됩니다. (식은 쉼표(,) 또는 세미콜론(;)으로 구분)
i--; 는 세미콜론으로 하나의 식이기 때문에,
i=i+1; 과 다를바가 없습니다. (--i; 도 동일)
행복한 하루되세요 :)
-
*2020-04-16 12:57:22
4번에서 i가 후치연산인데,
i=2일때 i를 1로 바꾸고 5번을 실행하는건가요?
if문 안에있는 후치연산이 아니기때문에 4번에서 하나가 줄어들고 5번으로 이동한다는거죠?