책 내용 질문하기
71쪽, 72쪽
도서
2020 시나공 정보처리산업기사 실기 [기본서]
페이지
71
조회수
265
작성일
2020-09-23
작성자
탈퇴*원
첨부파일

71쪽 for 문 예제1

 

int i, hap = 0

for(i=1; i<=10; ++1) 

hqp +=1

printf("%d, %d\n", i, hap)

 

 

 

while문 예제1

 

int i = 0; hap = 0;

while (i<10)

i++

hqp +=i;

printf("%d, %d\n", i, hap) 

 

 

 

 

여기서 for문은 i는11까지 출력되고 while문 10까지 출력되는데 좀 더 편하게 계산하는 방법 없을까요??

너무 햇갈리네요 특히 while문이 너무 햇갈려요 전치후치 계산때문에 출력되는게 차이도 있을까요??

마지막으로 while문 쉽게 보는 법 좀 알려주세요 나올때마다 너무 햇갈리네요 ㅠㅠㅠㅠ

 

답변
2020-09-25 13:32:47

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

 

전치 후치가 단독으로 사용되었을 때는 단순히 1을 더하거나 빼는 역할 외에는 없습니다.

i++; 이라면 i=i+1;이라고 써진 것과 동일하죠. ++i;로 바꾼다고 결과가 달라지지는 않습니다.

 

반복문에서 종료시점을 알아보는 것은 해당 숫자 바로 전의 값을 대입하여 돌려보는 것이 가장 안전합니다.

for문의 경우 10이하로 돌리라고 했으니 i가 9일 때부터 디버깅해보세요.

9일때 코드가 돌아가고, 10일때 돌아가고, 11이 되면서 조건이 거짓이 되면서 코드를 돌리지 않고 빠져나가게 됩니다.

 

while문의 경우 10미만으로 돌리라고 했으니 i가 8일때부터 디버깅해보세요.

8일때 코드가 돌아가고, 9일때 돌아가고, 10이 되면서 조건이 거짓이 되면서 코드를 돌리지 않고 빠져나가게 됩니다.

 

모든 코드들은 '순차적으로' 수행됩니다. 각 코드를 순서대로 차근차근 따라가시면서 변수들의 값의 변화에 주의하시면 금새 익숙해지실 것이라고 봅니다.

 

행복한 하루되세요 :)

  • 관리자
    2020-09-25 13:32:47

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

     

    전치 후치가 단독으로 사용되었을 때는 단순히 1을 더하거나 빼는 역할 외에는 없습니다.

    i++; 이라면 i=i+1;이라고 써진 것과 동일하죠. ++i;로 바꾼다고 결과가 달라지지는 않습니다.

     

    반복문에서 종료시점을 알아보는 것은 해당 숫자 바로 전의 값을 대입하여 돌려보는 것이 가장 안전합니다.

    for문의 경우 10이하로 돌리라고 했으니 i가 9일 때부터 디버깅해보세요.

    9일때 코드가 돌아가고, 10일때 돌아가고, 11이 되면서 조건이 거짓이 되면서 코드를 돌리지 않고 빠져나가게 됩니다.

     

    while문의 경우 10미만으로 돌리라고 했으니 i가 8일때부터 디버깅해보세요.

    8일때 코드가 돌아가고, 9일때 돌아가고, 10이 되면서 조건이 거짓이 되면서 코드를 돌리지 않고 빠져나가게 됩니다.

     

    모든 코드들은 '순차적으로' 수행됩니다. 각 코드를 순서대로 차근차근 따라가시면서 변수들의 값의 변화에 주의하시면 금새 익숙해지실 것이라고 봅니다.

     

    행복한 하루되세요 :)

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