Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 조건문을 사용하지 않고 “짝수” 또는 “홀수”를 출력하는 프로그램

<시간/>

이 섹션에서는 (<, <=, !=,>,>=, ==)와 같은 조건문을 사용하지 않고 숫자가 홀수인지 짝수인지 확인하는 방법을 볼 것입니다.

조건문을 사용하여 홀수 또는 짝수를 쉽게 확인할 수 있습니다. 숫자를 2로 나눈 다음 나머지가 0인지 확인할 수 있습니다. 0이면 짝수입니다. 그렇지 않으면 숫자와 1로 AND 연산을 수행할 수 있습니다. 답이 0이면 짝수이고 그렇지 않으면 홀수입니다.

여기에서는 조건문을 사용할 수 없습니다. 홀수 또는 짝수를 확인하는 두 가지 다른 방법이 있습니다.

방법 1

여기서 우리는 문자열 배열을 생성할 것입니다. 인덱스 0 위치는 "짝수"를 유지하고 인덱스 1 위치는 "홀수"를 유지합니다. 숫자를 2로 나눈 나머지를 인덱스로 보내어 직접 결과를 얻을 수 있습니다.

예시 코드

#include<stdio.h>
main() {
   int n;
   char* arr[2] = {"Even", "Odd"};
   printf("Enter a number: "); //take the number from the user
   scanf("%d", &n);
   printf("The number is: %s", arr[n%2]); //get the remainder to choose
   the string
}

출력 1

Enter a number: 40
The number is: Even

출력 2

Enter a number: 89
The number is: Odd

방법 2

이것이 두 번째 방법입니다. 이 방법에서는 몇 가지 트릭을 사용합니다. 여기서 논리 및 비트 연산자가 사용됩니다. 처음에는 숫자와 1을 사용하여 AND 연산을 수행합니다. 그런 다음 논리 및 를 사용하여 홀수 또는 짝수를 인쇄합니다. 비트 AND의 결과가 1이면 논리적 AND 연산만 홀수 결과를 반환하고, 그렇지 않으면 짝수를 반환합니다.

예시 코드

#include<stdio.h>
main() {
   int n;
   char *arr[2] = {"Even", "Odd"};
   printf("Enter a number: "); //take the number from the user
   scanf("%d", &n);
   (n & 1 && printf("odd"))|| printf("even"); //n & 1 will be 1 when 1
   is present at LSb, so it is odd.
}

출력 1

Enter a number: 40
even

출력 2

Enter a number: 89
odd