Introducción
En este laboratorio, aprenderemos a escribir un programa en C para comprobar si un número es un palíndromo o no. Lo haremos siguiendo los pasos dados.
Nota: Tienes que crear el archivo
~/project/main.ctú mismo para practicar la codificación y aprender a compilar y ejecutarlo con gcc.
cd ~/project
## crear main.c
touch main.c
## compilar main.c
gcc main.c -o main
## ejecutar main
./main
Comprendiendo el palíndromo
Palíndromo es un número o una cadena que, cuando se lee desde el principio y desde el final, se lee igual. Por ejemplo: 121 o "racecar".
Inicializando variables
Comenzamos inicializando las variables necesarias para el programa. En el programa dado, hemos utilizado cuatro variables, a, b, c, s. Vamos a utilizar estas variables para realizar las operaciones necesarias.
#include<stdio.h>
int main()
{
int a, b, c, s = 0;
printf("Enter a number: ");
scanf("%d", &a);
c = a;
}
Invirtiendo el número
Invertimos el número para poder compararlo con el número original y comprobar si es un palíndromo o no. Utilizamos un bucle while para invertir el número.
while(a > 0)
{
b = a % 10; //extraer el último dígito
s = (s * 10) + b; //agregar el último dígito al número invertido
a = a / 10; //eliminar el último dígito del número original
}
Comparando el número original con el número invertido
Finalmente, comparamos el número invertido con el número original para comprobar si es un palíndromo o no.
if(s == c)
{
printf("%d is a Palindrome", c);
}
else
{
printf("%d is not a Palindrome", c);
}
Código completo
Aquí está el código completo del programa:
#include<stdio.h>
int main()
{
int a, b, c, s = 0;
printf("Enter a number: ");
scanf("%d", &a);
c = a;
while(a > 0)
{
b = a % 10;
s = (s * 10) + b;
a = a / 10;
}
if(s == c)
{
printf("%d is a Palindrome", c);
}
else
{
printf("%d is not a Palindrome", c);
}
return 0;
}
Resumen
En este laboratorio, hemos aprendido a escribir un programa en C para comprobar si un número es un palíndromo o no. Hemos aprendido la lógica detrás de la comprobación de palíndromos y la hemos implementado en el programa. Ahora tenemos una mejor comprensión de este concepto y podemos implementarlo en programas más complejos.



