jueves, 5 de mayo de 2011

Torres de Hanoi (recursividad)

Torres de Hanoi, movimientos a realizar

Diagrama de flujo


Codigo en C
/*Descripcion:piramide de hanoi con 3 torres
  Autor: Membrillo Rodriguez Cristian Emanuel
  Grupo: 2293 FCA UNAM */

#include <stdio.h>

void hanoi(int n,int com, int aux, int fin);

main(){
       char com='A';
       char aux='B';
       char fin='C';
       int n;
      
       printf("\nN£mero de discos: ");
       scanf("%d",&n);
      
       printf("\n\nLos movimientos a realizar son: \n");
       hanoi(n,com,aux,fin);
      
       printf("\n\n\n\n\n\n\n\n\t\t\t\t\t\t\t\t By MERC");
}

void hanoi(int n,int com, int aux, int fin){
     if(n==1){
              printf("%c->%c",com,fin);
              }
              else{
                   hanoi(n-1,com,fin,aux);
                   printf("\n%c->%c\n",com,fin);
                   hanoi(n-1,aux,com,fin);
                   }
     }

Corrida

No hay comentarios:

Publicar un comentario