Ya solucioné el problema. Mi solución no es elegante pero funciona.
La función:
Código C:
Ver originalvoid g_TorreDeHanoiRecursivo(int liFilas, int liNDiscos,int liTorreOrigen[kMAX],
int liTorreIntermedia[kMAX],int liTorreDestino[kMAX])
{
.....
}
Le agregue tres argumentos los cuales se mantendrán en la misma posición dentro de la función.
Código C:
Ver originalvoid g_TorreDeHanoiRecursivo(int liFilas, int liNDiscos,int liTorreOrigen[kMAX],
int liTorreIntermedia[kMAX],int liTorreDestino[kMAX],
int O[kMAX],int I[kMAX], int D[kMAX])
{
.....
}
Al ejecutarse el programa
Las posiciones de liTorreOrigen y O estarán ocupadas por el mismo arreglo
Las posiciones de liTorreIntermedia y I estarán ocupadas otro arreglo igual para las dos posiciones
Las posiciones de liTorreDestino y D es el mismo caso.
Todo el proceso recursivo estará a cargo de los parametros liTorreOrigen, liTorreIntermedia y liTorreDestino. Como O apuntará a la misma dirección de memoria que liTorreOrigen y así sucesivamente para los otros casos entonces puedo escribir
y siempre se imprimirá en el orden correcto porque aprovecha que no se cambia de posición en la función y por ende apuntará correctamente a la dirección de memoria deseada.
Debajo posteare la nueva función:
Código C:
Ver originalvoid g_TorreDeHanoiRecursivo(int liFilas, int liNDiscos,int liTorreOrigen[kMAX],
int liTorreIntermedia[kMAX],int liTorreDestino[kMAX],
int O[kMAX],int I[kMAX], int D[kMAX])
{
if(liNDiscos==1)
{
g_MoverDiscos(liFilas, liNDiscos, liTorreOrigen, liTorreDestino);
//g_ImprimirDiscos(liFilas,liTorreOrigen,liTorreIntermedia,liTorreDestino);
g_ImprimirDiscos(liFilas,O, I, D);
}//END if
else
{
g_TorreDeHanoiRecursivo(liFilas, liNDiscos-1,liTorreOrigen,
liTorreDestino,liTorreIntermedia,O,I,D);
g_MoverDiscos(liFilas, liNDiscos, liTorreOrigen, liTorreDestino);
//g_ImprimirDiscos(liFilas,liTorreOrigen,liTorreIntermedia,liTorreDestino);
g_ImprimirDiscos(liFilas,O,I,D);
g_TorreDeHanoiRecursivo(liFilas, liNDiscos-1,liTorreIntermedia,
liTorreOrigen,liTorreDestino,O,I,D);
}//END else
}//END g_TorreDeHanoiRecursivo
vosk ahora escribí todo sin los desreferenciadores =P
Gracias por todo amigos.