Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/08/2012, 18:25
Avatar de Doommarine_Maxi
Doommarine_Maxi
 
Fecha de Ingreso: febrero-2011
Mensajes: 54
Antigüedad: 13 años, 3 meses
Puntos: 8
Respuesta: Duda en funcion de Palindromos

El problema en el primer codigo es que en i siempre va a ser igual durante el for, por que lo incrementas solamete durante el While, pero no durante el bucle for, entonces estas siempre comparando cadux[k] con cadux[i], cuando i siempre es constante y k esta variando.

Código C++:
Ver original
  1. while(i<=(j/2)&&flag==0) {
  2.         for(k=j-1;k>=(j/2);k--)
  3.             if(cadaux[i]!=cadaux[k]) /*Error: cadaux[1] != cadaux[5], cadaux[1] != cadaux[4], etc...*/
  4.                 flag=1;
  5.         i++; /*Aca esta el error, estas incrementando la variable
  6.             solamente durante el while, pero en el for i siempre es igual*/
  7.     }

Yo con este código lo pude hacer andar tranquilamente, sin necesidad de usar un bucle dentro de otro.
Código C++:
Ver original
  1. i=0;
  2. for(k=j-1;k>=(j/2);k--)
  3. {
  4.     if(cadaux[i++]!=cadaux[k])
  5.     {
  6.         flag=1;
  7.         break;
  8.     }
  9. }

Es una pena, por que realizaste un código muy bonito, pero no te funcionaba solamente por ese detalle mínimo.

Última edición por Doommarine_Maxi; 18/08/2012 a las 18:31 Razón: Agregar el break