Maison >développement back-end >C++ >Programme C pour imprimer 'pair' ou 'impair' sans utiliser d'instructions conditionnelles

Programme C pour imprimer 'pair' ou 'impair' sans utiliser d'instructions conditionnelles

王林
王林avant
2023-09-15 21:21:03566parcourir

Programme C pour imprimer pair ou impair sans utiliser dinstructions conditionnelles

Dans cette section, nous verrons comment vérifier si un nombre est impair sans utiliser d'instructions conditionnelles comme , >=, == Toujours un nombre pair.

Nous pouvons facilement vérifier si le nombre est pair ou impair en utilisant une instruction conditionnelle. Nous pouvons diviser le nombre par 2 et vérifier si le reste est 0. Si 0, c'est un nombre pair. Sinon, on peut ET le nombre avec 1. Si la réponse est 0, c’est un nombre pair, sinon c’est un nombre impair.

Les instructions conditionnelles ne peuvent pas être utilisées ici. Nous verrons deux manières différentes de vérifier si un nombre impair ou pair est présent.

Méthode 1

Ici, nous allons créer un tableau de chaînes. L'index 0 contiendra "pair" et l'index 1 contiendra "impair". On peut obtenir directement le résultat en prenant le reste après avoir divisé le nombre par 2 comme indice.

Exemple de code

#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
}

Sortie 1

La traduction chinoise est :

Sortie 1

Enter a number: 40
The number is: Even

Sortie 2

Enter a number: 89
The number is: Odd

Méthode 2

C'est la deuxième méthode. Dans cette méthode, nous utiliserons quelques astuces. Des opérateurs logiques et au niveau du bit sont utilisés ici. Tout d’abord, nous ET le nombre et 1. Utilisez ensuite la somme logique pour imprimer des nombres pairs ou impairs. L’opération ET logique renverra un résultat impair lorsque le résultat du ET au niveau du bit est 1, sinon elle renverra un nombre pair. La traduction chinoise de

Sample code

#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.
}

Sortie 1

est :

Sortie 1

Enter a number: 40
even

Sortie 2

Enter a number: 89
odd

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer