짝수 또는 홀수 확인

CBeginner
지금 연습하기

소개

본 랩은 학생들이 비트 연산자를 사용하여 숫자가 짝수인지 홀수인지 판별하는 프로그램을 이해하도록 돕는 것을 목표로 합니다. 또한, 나머지 연산자 (modulus operator) 를 사용하지 않고 숫자가 짝수인지 홀수인지 확인하는 방법도 제공합니다.

비트 연산자

  1. 먼저 학생들에게 비트 연산자 (bitwise operator) 가 무엇인지 설명합니다.
  2. 비트 연산자를 사용하여 프로그램이 짝수와 홀수를 어떻게 확인하는지 설명합니다.
    • 숫자가 홀수이면 최하위 비트 (LSB, Least Significant Bit) 에 1 을 갖습니다.
    • 숫자가 짝수이면 최하위 비트 (LSB) 에 0 을 갖습니다.
  3. 학생들에게 코드 구현을 제공하고, 코드를 ~/project/ 디렉토리의 main.c 파일에 복사하도록 요청합니다.
  4. 코드 구현은 다음과 같아야 합니다.
#include<stdio.h>

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int x;
    for(x = 0; x <= 10; x++)
    {
        if(x&1) // if number is odd
            printf("\t\t\t%d is odd\n",x);
        else if(!(x&1)) // ! is used inside if to reverse the boolean value
            printf("\t\t\t%d is even\n",x);
    }

    printf("\n\n\n\n\t\t\tCoding is Fun !\n\n\n");
    return 0;
}

나머지 연산자 없이 짝수 또는 홀수 찾기

  1. 학생들에게 나머지 연산자 (modulus operator) 를 사용하지 않고도 숫자가 짝수인지 홀수인지 확인할 수 있다고 설명합니다.
  2. 이것이 어떻게 달성되는지 간략하게 설명합니다.
    • 숫자가 짝수이면, 2 로 나눈 후 다시 2 를 곱하면 원래 숫자가 되어야 합니다.
    • 숫자가 홀수이면, 2 로 나눈 후 다시 2 를 곱하면 원래 숫자가 되지 않아야 합니다.
  3. 학생들에게 코드 구현을 제공하고, 코드를 ~/project/ 디렉토리의 main.c 파일에 복사하도록 요청합니다.
  4. 코드 구현은 다음과 같아야 합니다.
#include<stdio.h>

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int n;
    printf("Enter a number:  ");
    scanf("%d",&n);

    if((n/2)*2 == n)
        printf("\n\n\t\t %d is Even\n", n);
    else
        printf("\n\n\t\t %d is Odd\n", n);

    printf("\n\n\n\n\t\t\tCoding is Fun !\n\n\n");
    return 0;
}

테스트

  1. 학생들에게 두 코드 구현을 모두 테스트하도록 요청합니다.
  2. 코드를 실행하고 출력이 예상대로 나오는지 확인합니다.

요약

학생들은 이제 숫자가 짝수인지 홀수인지 확인하는 두 가지 방법에 익숙해졌습니다. 원하는 기능을 달성하기 위해 이러한 기술을 모든 C 프로그램에서 구현할 수 있습니다.