完全不用递归解汉诺塔(65个盘子——VC6代码)

这篇博客介绍了如何使用非递归方法解决汉诺塔问题,特别针对65个盘子的情况,提供了具体的VC6平台下的代码实现。
摘要由CSDN通过智能技术生成
// helloworld.cpp : Defines the entry point for the console application.
//
//by 陈墨仙 2019-07-18
//完全不用递归解汉诺塔
#include "stdafx.h"
#include <windows.h>
int h[34];//为了便于理解,0号元素不用,33个盘子
int a[4][34];
int b[4];
int jihao;
int dijici;

void printH()
{
	//system("cls"); 
	for(int i = 1;i<=34;i++)
	{
		printf("%d:%d\t",i,a[3][i]);
	}

}
bool jiancha(int * h)//检测是否在下面的都是编号小的
{
	int d[4];
	d[1]=0;
	d[2]=0;
	d[3]=0;
	for(int j = 1;j<4;j++)
	{
	for(int i = 1;i<34;i++)
	{
		if(a[j][i]==0 || a[j][i]>a[j][i-1])
		{

		}
		else
		{
			printf("error  a[%d][%d] = %d a[%d][%d]=%d",j,i-1,a[j][i-1],j,i,a[j][i]);
			scanf("%d");
			return false;
		}
	}
	}
	return true;
}
bool shunxu(int zhuzi)
{
	for(int i = 1; i< b[zhuzi];i++)
	{
		if(a[zhuzi][i]==34-i)
		{
		}
		else
		{
			return false;
		}
	}
	return true;
}
bool chenggong(int 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值