Vérification des palindromes en C

CBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, nous allons apprendre à écrire un programme C pour vérifier si un nombre est un palindrome ou non. Nous allons le faire en suivant les étapes données.

Note: Vous devez créer le fichier ~/project/main.c vous-même pour pratiquer la programmation et apprendre à le compiler et à l'exécuter avec gcc.

cd ~/project
## créer main.c
touch main.c
## compiler main.c
gcc main.c -o main
## exécuter main
./main

Comprendre les palindromes

Un palindrome est un nombre ou une chaîne de caractères qui se lit de la même manière dans les deux sens. Par exemple : 121 ou "racecar".

Initialisation des variables

Nous commençons par initialiser les variables requises pour le programme. Dans le programme donné, nous avons utilisé quatre variables, a, b, c, s. Nous allons utiliser ces variables pour effectuer les opérations requises.

#include<stdio.h>

int main()
{
    int a, b, c, s = 0;
    printf("Entrez un nombre : ");
    scanf("%d", &a);
    c = a;
}

Inversion du nombre

Nous inversons le nombre afin de pouvoir le comparer avec le nombre original pour vérifier s'il s'agit d'un palindrome ou non. Nous utilisons une boucle while pour inverser le nombre.

while(a > 0)
{
    b = a % 10; //extrait le dernier chiffre
    s = (s * 10) + b; //ajoute le dernier chiffre au nombre inversé
    a = a / 10; //supprime le dernier chiffre du nombre original
}

Comparer le nombre original avec le nombre inversé

Enfin, nous comparons le nombre inversé avec le nombre original pour vérifier s'il s'agit d'un palindrome ou non.

if(s == c)
{
    printf("%d est un palindrome", c);
}
else
{
    printf("%d n'est pas un palindrome", c);
}

Code complet

Voici le code complet du programme :

#include<stdio.h>

int main()
{
    int a, b, c, s = 0;

    printf("Entrez un nombre : ");
    scanf("%d", &a);
    c = a;

    while(a > 0)
    {
        b = a % 10;
        s = (s * 10) + b;
        a = a / 10;
    }

    if(s == c)
    {
        printf("%d est un palindrome", c);
    }
    else
    {
        printf("%d n'est pas un palindrome", c);
    }

    return 0;
}

Résumé

Dans ce laboratoire, nous avons appris à écrire un programme C pour vérifier si un nombre est un palindrome ou non. Nous avons appris la logique derrière la vérification des palindromes et l'avons mise en œuvre dans le programme. Nous avons maintenant une meilleure compréhension de ce concept et pouvons désormais l'appliquer à des programmes plus complexes.