Vérification du nombre impair ou pair

CCBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Le laboratoire vise à aider les étudiants à comprendre un programme implémenté à l'aide d'opérateurs bit-à-bit pour déterminer si un nombre est impair ou pair. De plus, il fournit également une méthode pour vérifier si un nombre est impair ou pair sans utiliser l'opérateur modulo.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL c(("C")) -.-> c/BasicsGroup(["Basics"]) c(("C")) -.-> c/ControlFlowGroup(["Control Flow"]) c(("C")) -.-> c/UserInteractionGroup(["User Interaction"]) c/BasicsGroup -.-> c/variables("Variables") c/BasicsGroup -.-> c/operators("Operators") c/ControlFlowGroup -.-> c/if_else("If...Else") c/ControlFlowGroup -.-> c/for_loop("For Loop") c/UserInteractionGroup -.-> c/user_input("User Input") c/UserInteractionGroup -.-> c/output("Output") subgraph Lab Skills c/variables -.-> lab-123219{{"Vérification du nombre impair ou pair"}} c/operators -.-> lab-123219{{"Vérification du nombre impair ou pair"}} c/if_else -.-> lab-123219{{"Vérification du nombre impair ou pair"}} c/for_loop -.-> lab-123219{{"Vérification du nombre impair ou pair"}} c/user_input -.-> lab-123219{{"Vérification du nombre impair ou pair"}} c/output -.-> lab-123219{{"Vérification du nombre impair ou pair"}} end

Opérateur bit-à-bit

  1. Commencez par expliquer aux étudiants ce qu'est l'opérateur bit-à-bit.
  2. Montrez comment le programme vérifie les nombres impairs et pairs à l'aide d'opérateurs bit-à-bit.
    • Si un nombre est impair, il a un 1 dans le bit de poids faible (LSB).
    • Si un nombre est pair, il a un 0 dans le bit de poids faible (LSB).
  3. Donnez à l'étudiant la mise en œuvre du code et demandez-lui de copier le code dans son fichier main.c dans le répertoire ~/project/.
  4. La mise en œuvre du code devrait être la suivante :
#include<stdio.h>

int main()
{
    printf("\n\n\t\tLabEx - Meilleur endroit pour apprendre\n\n\n");
    int x;
    for(x = 0; x <= 10; x++)
    {
        if(x&1) // si le nombre est impair
            printf("\t\t\t%d est impair\n",x);
        else if(!(x&1)) // le symbole! est utilisé à l'intérieur de if pour inverser la valeur booléenne
            printf("\t\t\t%d est pair\n",x);
    }

    printf("\n\n\n\n\t\t\tCoder c'est amusant!\n\n\n");
    return 0;
}

Trouver si un nombre est impair ou pair sans utiliser l'opérateur modulo

  1. Expliquez aux étudiants qu'il est possible de déterminer si un nombre est impair ou pair sans utiliser l'opérateur modulo.
  2. Décrivez brièvement comment cela est réalisé.
    • Si un nombre est pair, alors le diviser par 2 et le multiplier à nouveau par 2 devrait donner le nombre original.
    • Si un nombre est impair, alors le diviser par 2 et le multiplier à nouveau par 2 ne devrait pas donner le nombre original.
  3. Donnez à l'étudiant la mise en œuvre du code et demandez-lui de la copier dans son fichier main.c dans le répertoire ~/project/.
  4. La mise en œuvre du code devrait être la suivante :
#include<stdio.h>

int main()
{
    printf("\n\n\t\tLabEx - Meilleur endroit pour apprendre\n\n\n");
    int n;
    printf("Entrez un nombre :  ");
    scanf("%d",&n);

    if((n/2)*2 == n)
        printf("\n\n\t\t %d est Pair\n", n);
    else
        printf("\n\n\t\t %d est Impair\n", n);

    printf("\n\n\n\n\t\t\tCoder c'est amusant!\n\n\n");
    return 0;
}

Test

  1. Demandez aux étudiants de tester les deux mises en œuvre de code.
  2. Exécutez le code et vérifiez si la sortie est conforme à l'attente.

Résumé

Les étudiants sont maintenant familiers avec deux méthodes de vérification pour déterminer si un nombre est impair ou pair. Ils peuvent implémenter ces techniques dans tout programme C pour obtenir la fonctionnalité souhaitée.