Título: Ayuda con mi codigo quiero verificar si un numero es palindrome porfa y gracias Publicado por: Davidsito1598 en 15 Junio 2018, 15:35 pm #include <stdio.h>
#include <stdlib.h> #include <string.h> #include <conio.h> void LeerCadena(char cad[]) { int tecla; int cont=0; do { scanf("%d",&tecla); cad[cont]=tecla; cont++; }while (cont<=10); cad[cont]='\0'; // para no ingresar se usa la cadena ejemplo //strcpy(cad,"Sigue las ultimas noticias de #Cuenca, #Ecuador y el Mundo en @eltiempocuenca #marcandodiferencia @IGecuador\0"); } void Palindrome (char c [10]) { int c2=0,i=0,p,j; j=9; do { i++; j--; if (c==c[j]) { //c2++; } i++; j--; }while (i<=4); if (c2=5) { printf("\n El numero es palindrome"); } else { printf ("\n El numero no es palindrome"); } } int main () { char c [10]; printf("Ingrese un numero \n"); LeerCadena (c); Palindrome(c); } Título: Re: Ayuda con mi codigo quiero verificar si un numero es palindrome porfa y gracias Publicado por: Beginner Web en 15 Junio 2018, 23:38 pm Puedes invertir el numero utilizando recursividad y comprobando si el numero que ingresaste es igual al valor de retorno de la funcion recursiva , en ese caso escribir CAPICUA, caso contrario NO CAPICUA, esto para los numeros numeros enteros no hace falta que sea una cadena.
funcion invertir(n: entero, r: entero) : entero si(n==0) invertir <-r; sino r*=10; r+=n%10; invertir<- invertir(n/10, r); inicio numero, resultado=0 : entero escribir "Ingrese numero:" leer(numero) si(numero==invertir(numero,resultado) escribir ("CAPICUA") sino escribir ("NO CAPICUA") finsi fin Bueno si quieres con cadenas aca te dejo tu codigo modificado Código
|