Código de C/Visual C - Torres de Hanoi con función recursiva

Versión 1
estrellaestrellaestrellaestrellaestrella(10)

Publicado el 1 de Noviembre del 2005gráfica de visualizaciones de la versión: Versión 1
91.393 visualizaciones desde el 1 de Noviembre del 2005
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <stdio.h>
#include <conio.h>
 
void hanoi(int n,int com, int aux, int fin);
 
void main(void){
 
        clrscr();
	char com='A';
	char aux='B';
	char fin='C';
	int n;
 
	printf("\nN£mero de discos: ");
	scanf("%d",&n);
	fflush(stdin);
 
	printf("\n\nLos movimientos a realizar son: \n");
	hanoi(n,com,aux,fin);
}
 
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);
	}
}



Comentarios sobre la versión: Versión 1 (10)

2 de Febrero del 2006
estrellaestrellaestrellaestrellaestrella
simple pero la funcion Hanoi te sirve para comprenderlo. GRACIAS
Responder
9 de Mayo del 2007
estrellaestrellaestrellaestrellaestrella
Muy bueno, felcitaciones y gracias
Responder
6 de Junio del 2007
estrellaestrellaestrellaestrellaestrella
Muy bueno
Responder
30 de Octubre del 2008
estrellaestrellaestrellaestrellaestrella
NO SIRVE PARA C++ Y TODAVIA ESTAS ANTICUADO.. HASLO CON COUT EN VEZ DE PRINT F
Responder
Ray
8 de Marzo del 2018
estrellaestrellaestrellaestrellaestrella
Es enserio tu comentario o es sarcasmo?
Responder
5 de Septiembre del 2010
estrellaestrellaestrellaestrellaestrella
en realidad esta en c y ese codigo no sirve tendrias ke modificarle cosas me kedo algo asi pruebalo solo ke sigue teniendo errores pues no me imprime el resultado :´(
Responder
23 de Mayo del 2012
estrellaestrellaestrellaestrellaestrella
Excelente para comprender este problema. Muchas gracias por el aporte.
Saludos
Responder
20 de Junio del 2012
estrellaestrellaestrellaestrellaestrella
Muy buena solucion, ignora los comentarios de los retrasados.

Para aquellos que quieran compilarlo con g++ o similares.

#include <iostream>
using namespace std;

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

int main(){

char com = 'A';
char aux = 'B';
char fin = 'C';
int n;

cout << "Numero de discos: ";
cin >> n;

cout << "Los movimientos a realizar son:" << endl;
hanoi(n,com,aux,fin);
cin >> n;
return 0;
}

void hanoi(int n,char com, char aux, char fin){

if(n==1)
cout << com << " -> " << fin << endl;
else
{
hanoi(n-1,com,fin,aux);
cout << com << " -> " << fin << endl;
hanoi(n-1,aux,com,fin);
}
}

Asi seria en c++ con los aclamados cout...

Un saludo.
Responder
24 de Mayo del 2013
estrellaestrellaestrellaestrellaestrella
Muy bueno! :D
Responder
Julen
1 de Mayo del 2021
estrellaestrellaestrellaestrellaestrella
Hola buena, alguien sabría como seria el código recursivo para una versión nueva de las torres de Hanoi? la version nueva es que para pasar del palo A al palo C habría que pasar primero por el B, es decir, para ir del A al C hay que hacer A-B-C, y para volver, es decir, del C al A, hay que hacer lo mismo C-B-A, por favor si alguien sabe hacerlo contestar.

Muchas gracias
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s1260