自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (11)
  • 收藏
  • 关注

原创 验证非递归汉诺塔的结果

我用递归方法写了一个汉诺塔程序,结果与非递归比较,是nodifferences稍后我会把递归代码传上去。

2019-09-24 20:32:24 269

原创 非递归解汉诺塔(奇数版)

啥也不说了,下载地址https://github.com/corivsky/corivsky假设盘子总数为奇数,目标从1移到3号柱。奇数盘移动顺序循环是1->33->22->1偶数盘1->22->33->1第n步是几号盘第几次移动?假设最上方1号盘,往...

2019-09-24 09:14:47 430

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

// 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...

2019-07-18 20:08:31 565

原创 用vb6.0小程序验证我的汉诺塔直接计算移动,不用递归的设想

代码和可执行文件已上传,目前人工验证了3个盘和5个盘。 代码下载地址,vb6.0代码https://download.csdn.net/download/corivsky/10756533

2018-10-31 21:34:36 353

原创 求汉诺塔的第N号盘的第Q次移动

          

2018-10-31 09:34:50 357

原创 计算一个序列的移动平均线序列的模板,可实现均线的均线

功能:计算序列的移动平均线,并返回序列

2015-07-20 17:42:56 2546

原创 32位16位8位寄存器及编号

记住寄存器的编码对以后硬编码有用……

2014-10-06 11:28:27 6971

原创 二进制到十六进制转换法加各种进制的运算

二进制到十六进制转换法加各种进制的运算

2014-10-06 00:03:15 3762 3

原创 阿兰avg制作精灵测试版发布啦~

下载地址http://www.rayfile.com/files/061446ba-f624-11e1-bbce-0015c55db73d/ 几点注意事项:一,运行时,鼠标点击对话框,才会进行下一步。二,有选择项出现时,鼠标点击对话款无效,必须点击选择项,才能实现场景跳转。三,要取消立绘或者bgm,可以点击相应按钮,在打开的文件栏下方点击取消。四,变量设定还未完成。

2012-09-04 08:18:54 2288 3

原创 地图编辑器的一种书写方法

今天早上五点多起床和同学通电话,请教地图编辑器的写法。 首先,封装一个dll,功能是:可以在x,y处画一张图,并且可以缩放。 然后使用mfc调用这个dll来写地图编辑器(游戏主程序也可以调用这个dll)。 我们要编辑的地图相当于一张白纸,我们要把草地,树,房子画上去。 草地啦,树啦,房子啦都可以打包成一个item类。 然后编辑的时候直接addItem就可以了

2009-06-18 06:20:00 1105

原创 编写模板的一个问题

 一、模板的定义和实现必须写在一起。否则你要include那个cpp。我用的是vc6.0。二、使用NULL的时候必须include,否则会说未声明的标识符,因为windows.h里define了NULL为0。我用的还是vc6.0。  555555555觉得自己真的很弱智,这两个问题困扰了我这么久。我的基础太差啦~~竟然不知道模板的实现和定义要一起写在.h里的!~~ 大学里没

2009-01-24 21:23:00 895

原创 zge工作计划——变更了

使用freetype打印字体。由人在山边做!~本来我想做的……囧算了,现在先仔细看一下core的代码吧。毕竟opengl我实在不了解。还是右手坐标系!!!!!(*^__^*) 嘻嘻……

2009-01-13 17:50:00 793

原创 ZGE工作报告:md2模型读取成功

 http://4683663.photo.hexun.com/originalPic.aspx?photoID=58115893&pubTime=2009-1-12%2021:56&filetype=.jpg&hashid=E609F1760179C66C8E675597ED1F2EEF啊啊啊啊……………………花了一天的时间~~~~~~(*^__^*) 嘻嘻……接口如下:#pragma once

2009-01-12 21:57:00 1223

原创 正在coding的一个开源3d小引擎——zge

 ZGE 起初是用OPENGL改写的HGE引擎,目前的版本号是0.6A目前的定义是轻量级渲染引擎。 附件是ZGE引擎编译完成的部分。引擎的接口如下 (暂定2009-1-11)//引擎接口class Root{public:        //输入部分        virtual        bool        Input_KeyDown(unsigned char 

2009-01-11 17:45:00 1510 4

原创 遗传算法——旅行商问题

  Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font

2008-12-27 12:38:00 8486 8

原创 gui概要分析

 类似mfc的一个gui概要分析,呵呵 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE

2008-12-25 12:23:00 1135

原创 战争迷雾的实现——占用影响图

  Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font

2008-12-25 07:37:00 3347

原创 union的作用

 下午被一个网友教育了一顿,教育内容如下:struct mapinfo{union{int maptypearry[13*13];int maptype[13][13];char maptype4[4][13][13];}...}这是一个很普通的保存2d地图网格信息的结构体,本来他只保存一层地图信息:int maptype[13][13];在我的要求下加到了

2008-12-22 17:51:00 3260

原创 简直是作弊的fusm(模糊状态机)

 模糊状态机和状态机的区别就在于模糊状态机可以同时有好几个状态。这些状态有不同的重要度,然后根据重要度不同,状态的每帧逻辑更新函数的逻辑也有不同。上一篇博客讲述了状态机了,这一篇就不讲相同的部分了。比如我们设定一个由ai控制的坦克,这辆坦克可以不受发射炮弹的时间的限制,可以自由转动角度,可以以任意速度前进。(作弊!这简直是作弊!)那么这个坦克拥有三个状态:状态一:发射炮弹状态二:转动角度状态三:前

2008-12-22 16:41:00 4941

原创 ai引擎中最简单的状态机

 所谓状态机,可以用两个类来表示第一个类:状态(描述每个状态)第二个类:状态机(管理状态)举个例子:一架坦克有两个状态状态一:随意移动状态二:开炮当坦克处于状态一时,如果有敌军坦克进入射程,则进入状态二当坦克处于状态二时,如果敌军坦克离开射程,则进入状态一这就可以用两个基类,两个派生表示。class 状态基类{public:    每帧逻辑更新();    当进入这个状态时的逻辑处理();   

2008-12-21 13:20:00 3380 3

原创 坦克大战ai引擎设计

 v/:* {behavior:url(#default#VML);}o/:* {behavior:url(#default#VML);}w/:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);} Normal 0 7.8 磅 0 2

2008-12-20 16:19:00 7259

原创 hge版《见习小恶魔》源代码中新发现的bug和解决方法以及解决vista兼容性问题

 这些bug可能依赖的编译器不同也会有不同的表现吧……至少以前xp下vs2005的debug版没有问题……orz第一个bug:guilabel没有初始化rect.x1,rect.y1解决方法:构造函数改为GUILabel::GUILabel(int _id, float x, float y, GdiFont *fnt, char* text, DWORD color, int align) : 

2008-12-19 19:25:00 2417 2

原创 用lua4.0模仿c++的指针和类

 1.用lua模仿c++的指针:     很简单,c++里的指针的内容就是内存地址。用lua进行模仿,只要用一个全局table模拟内存空间,然后将table下标作为指针地址就行了。    请看代码:_g_pz = {};--模拟内存空间function _new(something, somem_type)--新建指针    something = {};    m_type = "m_type"

2008-11-30 09:34:00 1580

原创 2006年vb6.0《见习小恶魔》源代码下载

    话说前几天放出了hge版的《见习小恶魔威力加强版》源代码………………突然间想起它的先祖————我2006年大二暑假写的vb6.0版 《见习小恶魔》,就想着。。。顺便把它也放出来吧。。………………然后发现存着latest version的vb版《见习》的源代码的网盘把我的源代码删啦!!!!于是只好找了另外一个存放vb版《见习》的网盘,版本比较老,可能有bug       链接:http://

2008-11-29 16:45:00 1001

原创 《见习小恶魔》源代码编译过程中可能出现的问题及解决方法

 有一个大问题……orz……就是hge是读取“debug”文件夹下的游戏资源的。游戏资源就是指“图片”“音乐”“粒子文件”之类的。。。。。。。。当debug文件夹下没有游戏资源时,hge就会报错,通常会停在hgesprite:render那里。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。解决方法就是:把“debug(游戏资源¥%#%@#%@).rar”(我忘记那个压

2008-11-29 16:21:00 1278

原创 hge养成类游戏《见习小恶魔威力加强版》源代码

   这是我用hge写的一个小游戏,现在放出源代码。这游戏是我以前在xp下写的,貌似该游戏在vista下会出现各种奇怪的现象……orz 注意:编译该代码需要自行前往hge官网下载hge的sdk,和angelscript官网下载angelscript的sdk链接如下:http://download.csdn.net/source/806024因为angelscript的s

2008-11-25 06:25:00 7033 13

原创 游戏中的资源管理器

 我写过一个2d游戏。写2d游戏时大部分的精力花在gui的撰写和写脚本的接口上了。之前写gui的时候,new一个button的时候就load一个texture,如果频繁切换gui,texture就会频繁地load和release。所以把纹理的加载管理与gui写在一块是很浪费效率的。最好的方法是纹理的加载与释放与gui无关。感谢饭中淹教会了我这个思路:给纹理设置一个重要度,初始值1,当有gui使用到

2008-08-05 17:20:00 1383 2

原创 算法复杂度的渐近表示法(详细版)

一个算法的时间复杂度,指算法运行的时间。假设数据输入规模是n,算法的复杂度可以表示为f(n)的函数一。大O记号假设f(n)和g(n)的定义域是非负整数,存在两个正整数c和n0,使得n>n0的时候,f(n)≤c*g(n),则f(n)=O(g(n))。可见O(g(n))可以表示算法运行时间的上界。O(g(n))表示的函数集合的函数是阶数不超过g(n)的函数。例如:f(n)=2*n+2=O(n)证明:当

2008-08-05 16:39:00 9817

原创 算法的复杂度的渐近表示方法

一个算法的时间复杂度,指算法运行的时间。假设数据输入规模是n,算法的复杂度可以表示为f(n)的函数一。大O记号假设f(n)和g(n)的定义域是非负整数,存在两个正整数c和n0,使得n>n0的时候,f(n)二。Ω记号Ω记号与大O记号相反,他可以表示算法运行时间的下界。Ω(g(n))表示的函数集合的函数是所有阶数超过g(n)的函数。三。Θ记号Θ记号介于大O记号和Ω记号之间。他表示,存在正常数c1,c2

2008-08-05 14:34:00 5559 1

原创 111

 111

2008-08-05 10:31:00 648

汉诺塔递归与非递归两种算法的代码与结果对比

汉诺塔递归与非递归结果对比,结果是no differences,说明非递归算法没错。递归算法参考了csdn另一名博主的博客。

2019-09-24

非递归解决汉诺塔,每一步都有确切解(奇数版)望老师指正-陈墨仙-西瓜西米露-20190924.rar

非递归解决汉诺塔,每一步都有确切解(奇数版)望老师指正-陈墨仙-西瓜西米露-20190924

2019-09-24

汉诺塔(非递归33个盘子)

// 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&#40;"cls"&#41;; 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 n,int zhuzi)//n号盘是否都移到3 { int d = 0; int t = 34; for(int i = 33;i>33-n;i--) { if(a[zhuzi][34-i]!=i-n+1) { return false; } } return true; } int jc3()//检测3号柱的盘子有几个 { int d = 0; int t = 34; for(int i = 33;i>0;i--) { if(h[i]==3) { d=d+1; t = i; } } return d; } int jc1()//检测1号柱的盘子有几个 { int d = 0; int t = 34; for(int i = 33;i>0;i--) { if(h[i]==1) { d=d+1; t = i; } } return d; } void initH() { for(int i = 0;i<34;i++) { h[i]=1; a[1][i]=i; a[2][i]=0; a[3][i]=0; } b[1]=34; b[2]=1; b[3]=1; } int jc2()//检测2号柱从33往下盘子有几个 { int d = 0; int t = 34; for(int i = 33;i>0;i--) { if(h[i]==2) { d=d+1; t = i; } } return d; } int getTop(int zhuzi) { int d = 0; int t = 0; for(int i = 1;i<34;i++) { if(h[i]==zhuzi && i>t) { t = i; } } return t; } bool jiou(int s) { if(s % 2 == 0) { return true; } else { return false; } } void change(int i,int yuan,int mubiao) { if(h[i] == yuan) { h[i] = mubiao; a[mubiao][b[mubiao]]=i; b[mubiao]=b[mubiao]+1; a[yuan][b[yuan]]=0; b[yuan]=b[yuan]-1; printf("h[%d]:%d->%d",i,yuan,mubiao); } else { printf("Error h[%d] = %d",i,h[i]); scanf("%d"); } jiancha(h); } int FastLog2(int x) { float fx; unsigned long ix, exp; fx = (float)x; ix = *(unsigned long*)&fx; exp = (ix >> 23) & 0xFF; return exp - 127; } int chu2(int n ,int cishu) { for(int j = 1; j<= cishu;j++) { n=n/2; } return n; } void jihaopan(int n) { int i = 1; int yuan = n; while(1) { if(n%2==1) { jihao = i; dijici = chu2(yuan,i)+1; break; } n=n/2; i=i+1; } //printf("几号盘%d,第几次%d",jihao,dijici); } int main(int argc, char* argv[]) { printf("汉诺塔!\n"); int times = 0; initH(); int ji = 1; for(int i = 1;i<5559060534555523;i++) { jihaopan(i); if(jiou(jihao)==false) { int tmp; tmp = dijici%3; if(tmp==1) { change(getTop(1),1,3); } else if(tmp==2) { change(getTop(3),3,2); } else { change(getTop(2),2,1); } } else { int tmp; tmp = dijici%3; if(tmp==1) { change(getTop(1),1,2); } else if(tmp==2) { change(getTop(2),2,3); } else { change(getTop(3),3,1); } } if(chenggong(33,3)) { printf("sssss"); break; } } return 0; }

2019-07-19

helloworld.rar

完全不用递归解汉诺塔(VC6——65个盘子)(作者:陈墨仙)

2019-07-18

用vb6.0小程序验证我的汉诺塔直接计算移动,不用递归的设想

用vb6.0小程序验证我的汉诺塔直接计算移动,不用递归的设想

2018-10-31

通过传入序列计算移动平均线序列

通过传入序列计算移动平均线序列。 使用方法: static funcMa ma60; static funcMa ma2; static funcMa ma22; static vector C;//收盘价序列 vector ma60temp = ma60.Caculate(C,N*2,0);//收盘价的均线序列 vector ma2temp = a2.Caculate(ma60temp,M1*2,0);//均线的均线 vector ma22temp =ma22.Caculate(ma2temp,M2*2,0);//均线的均线的均线

2015-07-20

遗传算法——旅行商问题

用遗传算法解决旅行商问题,也就是多个点怎么连线最短问题,使用mfc做界面。

2008-12-27

angelscript sdk

angelscript2.9.1sdk,配套hge版见习小恶魔

2008-12-05

用lua4.0模仿c++的指针和类

用lua4.0模仿c++的指针和类,可以继承重载,但是new无法改变成员变量

2008-11-30

用lua4.0模仿c++的指针和类的脚本以及lua4.0编译器

用lua4.0模仿c++的指针和类的脚本以及lua4.0编译器,目前在new那方面还不完善,可以重载和继承。

2008-11-30

见习小恶魔hge版源码

养成类游戏见习小恶魔源代码,附带游戏资源,游戏执行程序,需自行下载hge sdk,angelscript sdk。vista下编译不通过。

2008-11-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除