ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# 반복문 (교육 7일차)
    C# 2020. 5. 26. 18:33

    반복문 (for, while, do while)

     반복문은 제어문 중 하나로 프로그램 소스 코드내에서 특정한 부분을 반복할 때 사용한다.

                       변수
    while (종료조건, 반복조건) -> 참이면
    {
    반복할 코드
    }

    -----------------------------------------------------
    for(초기화 ; 종료 조건 ; 증감 연산자)
    {
    반복할 코드
    }
    -------------------------------------------------------
    한번은 실행하고 싶을 때
    do
    {
    반복할 코드
    }
    while(종료조건, 반복조건) -> 참이면 위로 반복 
                     변수

     

    변수를 사용해서 반복횟수를 결정하는데 증감연산자를 사용해서 조건에 만족할 경우, 루프를 반복하고 조건에 부합하지 않는 경우 반복을 종료한다.

     

    증감연산자

    i++ i=i+1
    i-- i=i-1

     

    a+=b a=a+b
    a-=b a=a-b
    a*=b  a=a*b
    a/=b a=a/b 
    a%=b a=a%b

    아래 예제는 각 for, while, do while 문을 사용해서 다섯번 반복하는 예제이다. 특징 으로는 while문에는 조건문을 가장 앞에 적고 증감연산자를 루프 내부에 위치시킨다. for문은 바로 옆 괄호에 모든 변수 초기화 조건문 증감연산자를 순서대로 적고 그 사이를 세미콜론으로 구분한다. do while문은 조건을 밑에 적으므로 한번은 실행시키고 조건을 밑에 넣고 반복시킨다.

     

    아래 예제는 정수형 변수를 입력받고 변수에 해당하는 구구단 단수를 출력하는 예제이다.

    변수 * iCount 이므로 증감연산자를 썼을 때, 구구단의 1~9까지 곱을 나타낼 수 있다. 

    그 밑의 예제는 이중 for문을 사용해서 2단부터 9단을 출력하는 예제이다. 이중루프에서 2단에서 1~9까지의 곱을 한번 반복시킨다음  첫 루프문으로 돌아와 3이 된다. 이중루프에서 3단에서 1~9까지의 곱을 반복시킨다. 이를 반복해서 구구단을 만들었다.

    루프에서 빠저냐오고, 계속 진행할 지를 결정하는 점프문이다. 아래 예제에서 while(true)는 무한반복문을 의미한다. 아래예제는 break를 사용해서 구구단을 만드는 예제인데, 구구단의 앞부분을 i 그리고 곱하는 부분을 j라고 할때 조건문을 사용해서 i와 j를 9보다 커지면 반복문을 중지하도록 하는 방법을 사용해서 구구단을 구현하였다.

    아래 두 예제는 n을 2로 나누었을 때, 0이 아니면 참이다. 따라서 n에는 짝수만 들어간다. sum에 짝수를 계속 더한 값이 저장된다. 그 밑의 예제는 이  1부터 1000까지 1씩 증가하는 n에 조건이 해당하는 2,3,5의 공배수들만이 sum에 계속 더해진다.

     

    메소드(Method)

     메소드란 코드를 모아놓은 명령줄(집합)을 특정단위로 묶은 것이 여러 개 있을 때 프로그램이 되는 것을 말한다. 지금까지 실행시킨 것은 Main메소드 부분만을 실행하는 것이었고, 자동차 공장에 다른 회사의 부품을 들고와서 조립하듯이 Main메소드는 조립하는 역할을 하고 Main메소드를 제외한 나머지 부분은 부품 역할을 한다. 따라서 Main 메소드는 다른 메소드와 차별점이 필요하다. Entry Point 진입점, 이라고 하는 곳으로 프로그래밍 언어마다 다 다르다. 이 진입점이 항상 제일 먼저 실행된다. 메소드의 이름을 짓는 방법은 변수의 이름을 지을 때와 동일하다. 똑같은 이름이 있어서도 안되고 숫자로 시작하면 안된다. 

     메소드의 형식은

    static void 이름 (인자) 로 구성되어 있는데, 제일 앞부분인 static은 나중에 강의를 들을 예정이고 void는 반환할 값의 자료형을 의미한다. 여기서 int를 void자리에 넣는다면, return 값은 정수형으로 반환을 할 것이고 다른 자료형도 마찬가지이다. void로 한다면 return 값이 없어도 된다. (인자) 메소드를 호출할 때 값을 받는 부분이다. 아래 예제를 보자.

    빨간색 박스는 단순하게 메소드를 호출하는 것 까지만 하고, 파란색 박스는 인자를 받아서 인자를 출력하는 것 까지이다. 마지막 초록색 박스는 void 대신 int형을 사용해서 인자로 입력받은 값을 더해서 반환을 해주는 것이다.

     

    아래 예제는 더하기 빼기 곱하기 나누기 를 각각의 메소드로 만들어서 계산을 해보는 메소드이다.

Designed by Tistory.