Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: ~V en 24 Abril 2008, 04:20 am



Título: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: ~V en 24 Abril 2008, 04:20 am
escriba un programa c++, que permita identificar una palabra "palindrome"
ingrese una palabra de 5 caracteres y el algoritmo
debe ser capaz de enviar un mensaje si es palindrome o no!
_
palindrome palabra q al leer al reves se pronuncia igual ej: salas, oruro ...

mmm... soy noob! :(
__

trate de hacerlo pero no me VA!

Código:
#include<stdio.h>
#include<conio.h>

char let[5];

void main()

{

  printf("Ingrese una palabra de 5 letras");
  scanf("%s",let[5]);

 if(let[0]==let[4])
 {
if(let[1]==let[3])
{
printf("La palabra ingresada es Palindrome");
}
}
else {
printf("La palabra ingresada NO es Palindrome");
}
}

:S

soy xarxa XD:::::::::
:::::::::
eso compilado me dice a todas palinfrome!!

qn me puede ayudar!::: gracias



Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: zhyzura en 24 Abril 2008, 07:20 am
me temo que tu problema es:
Código:
scanf("%s",let[5]);

en realidad deberia de ir:
Código:
scanf("%s",let);
recuerda que estas almacenando en una variable no en un arreglo.


ademas tienes agregada la libreria conio y en realidad ni siquera la estas usando...



Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: byebye en 24 Abril 2008, 13:37 pm
y copia los trabajos tal cual los piden. tienes un morro


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: Kasi en 24 Abril 2008, 15:31 pm
Deberias plantearte el ejercicio para un caso mas general y no uno de 5 letras, pues imaginate que sea una palabra de 11 letras(x decir alguna) te vas a poner a enlazar unos if dentro de otros?

Quedaria mejor planteado con un bucle repetitivo y 2 contadores, uno que cuente desde el principio hasta la mitad(o hasta que alcancen los 2 el mismo valor) y otro que cuente desde el final hacia atras.Y pregunte en cada momento si el contenido en esas posiciones sigue siendo igual, mientras sea igual se sigue recorriendo hasta salir del bucle, bien por que se recorre todo el array o bien por que se hallan valores diferentes.
Suena bastante complicado, pero es sencillito xD

Esta en c++, pero bueno xD

Código:
/*
Ejercicio: XX

      Descripción: Palindromos

*/
#include <iostream>
#include <stdio.h>
#define n 15
char palabra[n];
int i=0;
void palindromo(char t[],int nl);
void main()
{
do
{
cout<<"Introduce una palabra caracter a caracter para saber si es palindroma: ";
        cout<<"\nPulse * para terminar.";
   cin>>palabra[i];
   i++;
}
while(palabra[i-1]!='*' && i<n);
palindromo(palabra,i-1);
getchar();
}

void palindromo(char t[],int nl)
{
int i=0,j=nl;
   bool iguales=(t[i]==t[j-1]);
   while(iguales && i<=j)
    {
    iguales=(t[i]==t[j-1]);
    i++;
    j--;
    }
    if(iguales==true)
    cout<<"\nLa palabra es palindroma";
    else
    cout<<"\nLa palabra no es palindroma.";
}//fin

Realmente es un tochazo de codigo para la ***** de ejercicio que es, pero puede servir xD


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: BETA_V en 24 Abril 2008, 19:10 pm
hola¡¡ espero que sirva¡¡
Código
  1. /*
  2.   Author: Beta_v
  3.   Date: 24/04/08 14:09
  4.  
  5. */
  6.  
  7. #include  <stdio.h>
  8. #include  <string.h>
  9. #include  <stdlib.h>
  10.  
  11. int main(int argc, char *argv[])
  12. {
  13.    char *cad="neuquen";
  14.    char *cad2;
  15.    int len=strlen(cad)-1;
  16.    cad2=cad+len;
  17.    len=1;
  18.    while (*cad)
  19.    {
  20.        if (*cad!=*cad2) len=5;
  21.        cad++;
  22.        cad2--;
  23.        }
  24.  
  25.    if (len==1) printf("\nes palindromo\n");
  26.    else printf("\nno es palindromo\n");
  27.    system("PAUSE");
  28.    return EXIT_SUCCESS;
  29. }
  30.  


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: ~V en 24 Abril 2008, 19:37 pm
GRacias....

!! muchas de verdad!!!

por sus respuestas :)

_____

especial zhyzura.. era eso :$...

___
y a los dema.. para analizar los suios y aprender mas ..gracias!


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: eagle17 en 24 Abril 2008, 20:35 pm
También podrías pensar en usar una pila, es lo que yo veo mejor si kieres un caso general. Vas copiando una pila en otra y luego las comparas, si son iguales son un palindromo. La clase pila ya viene definida en la STL asi que... mas facil...

Suerte!  :D


Título: como realizar este ejercicio en C
Publicado por: carres_91 en 8 Noviembre 2011, 09:32 am
hola buenos dias, tengo dudas de como realizar una practica de programacion en codigo C. Como hariais este ejercicio?
Busca palíndromos En esta segunda práctica se quiere ser capaz de analizar un texto para encontrar los palíndromos que contiene. Un palíndromo es aquella palabra o frase que puede ser leída tanto de izquierda a derecha como de derecha a izquierda considerando sólo sus letras (se obvian los acentos, espacios y signos de puntuación). Por ejemplo: Palabras: anna. radar. suyas. seis. Frases: Senén tiene seis niños y siete niñas. se esta o no se esta. y ahora menos. es así, burro. y ahora calla, caray. Tenga en cuenta que estas frases son palíndromos, pues consideramos sólo sus letras (ej: "se esta o no se esta" -> "sesonoses"). Como entrada del programa, leeremos un texto formado por un conjunto frases separadas por '.'. Cada frase contendrá una o más palabras (separadas por espacios en blanco o signos de puntuación diferentes de'.'). En el texto sólo encontraremos letras en minúscula sin acentuar. En caso de que se lea de teclado, el texto acabará con el carácter '$'. Por ejemplo: anna. se esta o no se esta. radar. esto no es un palíndromo. $ En caso de que leemos de un fichero no nos hará falta el delimitador de final de secuencia, pues disponemos de herramientas para detectar que hemos leído todo el contenido del fichero. El texto tendrá como máximo una longitud de 1000 caracteres. Las frases tendrán una longitud máxima de 100 caracteres y no habrá más de 10. Finalmente, podemos considerar que el usuario siempre nos da la información de forma correcta. Una vez leído el texto, tendremos que indicar las frases que son palíndromos. Sólo hay que mostrar la frase en "formato palíndromo", no es necesario mantener los signos de puntuación originales. En el ejemplo anterior, la solución sería: anna. sesonoses. radar.
Código
  1. [code=c]
[/code]


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: LearningSpanishProgrammer en 8 Noviembre 2011, 13:45 pm
Creo que tambien pueden hacer así:

Código
  1. // str, strlen(str)
  2. int palindromo1(char palabra[], int length)
  3. {
  4.  if (length <= 0)
  5.    return true;
  6.  else
  7.    return palabra[0] == palabra[length - 1]
  8.        && palindromo1(&palabra[0] + 1, length - 2);
  9. }
  10.  
  11. // str, strlen(str)
  12. int palindromo2(char palabra[], int length)
  13. {
  14.  for (int i = 0; i < length / 2; ++i)
  15.  {
  16.    if (palabra[i] != palabra[length - 1 - i])
  17.      return false;
  18.  }
  19.  
  20.  return true;
  21. }
  22.  
  23. // C++
  24. int palindromo3(const std::string& nice)
  25. {
  26.  std::string::const_iterator first = nice.begin();
  27.  std::string::const_reverse_iterator second = nice.rbegin();
  28.  return std::equal(first, first + nice.size() / 2, second);
  29. }
  30.  

Hice dos en C y uno en C++


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: s00rk en 8 Noviembre 2011, 14:26 pm
Código
  1. // str, strlen(str)
  2. int palindromo1(char palabra[], int length)
  3. {
  4.  if (length <= 0)
  5.    return true;
  6.  else
  7.    return palabra[0] == palabra[length - 1]
  8.        && palindromo1(&palabra[0] + 1, length - 2);
  9. }


No deberia ser &palabra[0 + 1] ? O.o


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: rir3760 en 8 Noviembre 2011, 14:52 pm
No deberia ser &palabra[0 + 1] ?
Ambas son equivalentes y resultan en la direccion en memoria del segundo elemento del array. Para el caso la forma mas corta es "palabra + 1".

Un saludo


Título: NECESITO AYUDA CON MATLAB !!!
Publicado por: dragonverde28 en 4 Julio 2015, 19:04 pm
MATLAB !! Hola amigos, les escribo para ver si hay algún crak me puede ayudar con el desarrollo de estos programas que son de una tarea, desde ya muchas gracias por su tiempo =):

4.   Desarrolle un programa que permita visualizar la forma de onda de la energía eléctrica domiciliaria, con sus respectivos valores y mostrar en pantalla. (ogata de control)
5.   Desarrolle un programa que permita leer fotografías de un archivo en el computador ( 30 como minimo)
6.   Luego el programa debe mostrar el nbumero de filas y columnas de la foto en blanco y negro.
7.   Desarrolle un programa que permita tomar imágenes desde la cámara de computador y guardar el archivo.


Título: Re: crear un programa _ que permita identificar una palabra palindrome!
Publicado por: glv1310 en 17 Diciembre 2015, 19:32 pm
#include <stdio.h>//Libreria para E/S
#include <conio.h>//Funcion getch()
#include <string.h>//libreria para manejo de librerias
#include <windows.h>//funcion color
#include <malloc.h>//Trabajo con memoria dinámica
char palabra[200]={0}, *aux;//variables globales
int main(int argc, char *argv[]){
   system("color 1f");
   printf("\t\t\tPalindromo\n");
   printf("\t\t\tEscribe la palabra\n");
   printf("\t\t\t\t");
   fflush(stdin);
   gets(palabra);//lectura de la palabra   
   aux=(char *)malloc(strlen(palabra)+1*sizeof(char));//reservacion de memoria dinámica
   strcpy(aux, palabra);//se copian las cadenas
   aux=strrev(aux);//se invierte
   if(strcmp(aux, palabra)==0){//Se compara si son iguales las cadenas
      printf("\t\t\tEs palindromo\n");
   }else{
      printf("\t\t\tNo es palindromo\n");
   }
   free(aux);//se libera la memoria
   getch();
}