tc 下的汉诺塔动画,代替不直观的文本显示移动步骤。
代码片段
1. [代码]
源
/*********************************************/
/* 作者:gikieng 时间:2013.5.25 */
/* */
/*
汉诺塔动画演示
*/
/* */
/*********************************************/
#include <graphics.h>
#include<stdio.h>
#include <conio.h>
#include<time.h>
#include<math.h>
#include<string.h>
#define N 10 //定义盘数
RECT r = {240, 0, 460, 240};
TCHAR step[5];
int stepn=0;
int pan[3];
void dizuo()
{
setlinestyle(PS_SOLID,NULL,4);
line(20,400,160,400);
line(90,200,90,400);
line(220,400,360,400);
line(290,200,290,400);
line(420,400,560,400);
line(490,200,490,400);
}
//初始化汉诺塔
void hanoi_draw()
{
int i;
setlinestyle(PS_SOLID,NULL,12);
for(i=0;i<=(N-1)*7;i+=7)
{
setcolor(HSLtoRGB(12*15, 1, 0.5));
line(20+i,390-2*i,160-i,390-2*i);
}