책 내용 질문하기
377페이지 37번 문제
도서
2023 시나공 퀵이지 정보처리기사 실기
페이지
377페이지 37번 문제
조회수
248
작성일
2023-09-17
작성자
최*성
첨부파일

for ( j = 4; j >= 0; —j)

     for ( i = 4; i > j; —i)

이 부분이 잘 이해가 안되서요..!

 

첫번째 for문에서 감소연산자 j 가 감소되지 않고

밑에 for문으로 넘어가는지 궁금합니다..!

 

감소연산자가 전치에 있을때 감소가 먼저 되는거로 알고 있는데

감소되지않고 다음 for문으로 가더라구요

 

세미클론이 없어서 그런건가요??

 

비전공자라서 저세하게 부탁드리겠습니다..! ㅠㅜ

답변
2023-09-20 16:19:35

안녕하세요 길벗수험서 운영팀입니다.

 

for문의 형식을 아래와 같이 단순화 시키고,

  for(①; ②; ③) 

     ④;

 

5회 수행한다고 가정했을 때 수행되는 각 식의 순서는 다음과 같습니다.

1회 : ①, ②(조건 참), ④

2회 : ③, ②(조건 참), ④

3회 : ③, ②(조건 참), ④

4회 : ③, ②(조건 참), ④

5회 : ③, ②(조건 참), ④

종료 : ③, ②(조건 거짓) <탈출>

 

1회 수행 시 ③이 수행되지 않으므로 j가 감소하지 않는 것이죠.

 

여기에서 전치감소 연산자 --는 j=j-1과 다를바가 없습니다. j--가 들어가도 결과는 같죠.

전치/후치 증감 연산자가 식에 영향을 주는 것은 '하나의 식' 안에서 뿐입니다. 즉, sum = sum + i++; 과 같이 세미콜론(;) 또는 쉼표(,)로 구분되는 각 식 내에서만 전/후가 의미가 있을 뿐, for문과 같이 각 식이 세미콜론(;)으로 구분되어 개별로 사용될 때는 그저 1을 증/감시키는 역할 외에 다른 역할을 수행하지 못합니다. 

 

행복한 하루되세요 :)

  • 관리자
    2023-09-20 16:19:35

    안녕하세요 길벗수험서 운영팀입니다.

     

    for문의 형식을 아래와 같이 단순화 시키고,

      for(①; ②; ③) 

         ④;

     

    5회 수행한다고 가정했을 때 수행되는 각 식의 순서는 다음과 같습니다.

    1회 : ①, ②(조건 참), ④

    2회 : ③, ②(조건 참), ④

    3회 : ③, ②(조건 참), ④

    4회 : ③, ②(조건 참), ④

    5회 : ③, ②(조건 참), ④

    종료 : ③, ②(조건 거짓) <탈출>

     

    1회 수행 시 ③이 수행되지 않으므로 j가 감소하지 않는 것이죠.

     

    여기에서 전치감소 연산자 --는 j=j-1과 다를바가 없습니다. j--가 들어가도 결과는 같죠.

    전치/후치 증감 연산자가 식에 영향을 주는 것은 '하나의 식' 안에서 뿐입니다. 즉, sum = sum + i++; 과 같이 세미콜론(;) 또는 쉼표(,)로 구분되는 각 식 내에서만 전/후가 의미가 있을 뿐, for문과 같이 각 식이 세미콜론(;)으로 구분되어 개별로 사용될 때는 그저 1을 증/감시키는 역할 외에 다른 역할을 수행하지 못합니다. 

     

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.