상담문의

ㆍ HOME > 상담문의 > 정보처리기사 실기
제 목 8강까지 들었는데요...
글쓴이  기사친구작성일 2005-06-22조회수 469
글공유
게시글을 twitter로 보내기게시글을 facebook으로 보내기게시글을 Me2Day로 보내기게시글을 요즘으로 보내기
For k=1 to 100

        if (k mod 2)=0 then
            
              합계 = 합계 +k
        
        endif 

Next k


위 소스에서 합계 = 합계 +k 코딩에 대해 말씀드리겠습니다.

먼저 for문과 if문의 역할에 대해 이해하셔야 합니다.

만일 for문과 if문이 없으면 어떤 결과가 나올까요? 합계 = 합계 +k 코딩을 한번만 수행하므로 원하는 결과는 안 나올 겁니다.

그럼...
For k=1 to 100

        합계 = 합계 +k

Next k

이렇게 코딩하면 결과값은요? for문의 반복 명령으로 합계 = 합계 +k 코딩을 100번 수행합니다. 그러므로 결과는 1에서 100까지 합이 출력되죠.

결론입니다.
For k=1 to 100

        if (k mod 2)=0 then
            
              합계 = 합계 +k
        
        endif 

Next k

if 문이 추가되면 100번 수행하는데..if문 때문에 50번만 수행되죠...짝수의 합이 출력됩니다.

만일

For k=1 to 100

        if (k mod 2)=0 then
             
                  
        endif 

Next k 
합계 = 합계 +k

이렇게 코딩하면 for, if문 따로 합계 = 합계 +k 따로 실행됩니다.
그래서 결과는 우리가 원하는 짝수합이 출력되지 않습니다.
합계 = 합계 +k 의 코딩 위치에 따라서 수행 순서가 바뀌므로 코딩하는 위치가 중요합니다.

합계 = 합계 +k 라는 선물을 if라는 박스로 그리고 for라는 박스로 포장했다고 생각하세요

박스 밖에 있는 선물과 박스 안에 있는 선물은 차이가 있겠죠...

답변이 너무 난해한 것 같네요.^^

이해가 어려우시면 저희 기사친구로 전화 주세요. 직접 답변드리겠습니다.

댓글쓰기 :
이전글 성의있는 답변 감사드립니다.
다음글 문제가 안 풀려여..ㅠ.ㅠ
고객지원센터

02-556-3650

평일 9:00~18:00

일요일 공휴일 휴무

계좌번호안내

농협은행 724-01-173541

국민은행 633601-04-044665

예금주 (주)조은캠프

상호명 : (주)조은캠프 ㅣ 대표이사 : 이유락 ㅣ 대구광역시 북구 대학로80 경북대학교 IT융합산업빌딩 11층
사업자번호 : 504-81-62507 ㅣ 본사 : 053-954-0030 ㅣ 기술지원 : 070-7019-1144 ㅣ 팩스 : 050-7711-2200 ㅣ 
원격평생교육시설13호 ㅣ 출판사 : 345-2005-00013 ㅣ 통신판매업 : 2005-대구북구-00158 ㅣ 정보보호책임자 : 김창연  
기사친구는 SSL보안방식의 암호화구간을 적용하여 사이트를 안전하게 이용하실 수 있습니다.
COPYRIGHT 2005 (주)조은캠프 ALL RIGHTS RESERVED.관리자에게 메일보내기