Isaac 的个人资料Isaac Montgomery日志列表网络 工具 帮助

Yang Isaac

职业
地点
兴趣

Isaac Montgomery

My World
1月5日

新年就这么来了

不得不说我真的很懒,看看过去的2007年,发现我没写什么东西。虽说我着实写不出什么有意义的东西,不过这种借口终归只能用来搪塞自己吧。

我也不知道我在2007年到底在做什么,似乎只是一直在忙碌,做一些看似有趣的事情,然后感觉自己一直在进步,就像ACM班班训说的“每天把自己变得更强些”。其实班训前面还有两句话,“不断进取,追求卓越”,我一直不知道,大概是老板平时也不大提的缘故。我一直只记得这么一件事情,那就是每天让自己不断得变强,至于为什么,也许是那个不知停留在何方的疯狂的理想在作怪。

一年里做废了两个网站,退出了一个团体,重装了数不清的电脑,喝了数不清的酒,也看了很多很多的书和文档,感受到了从未有过的冲击,还了结了一件我一直很在乎的事情。。。总之一年就这么过去了,也没必要把旧账统统翻一遍,大概就是这个样子。

不像2006的最后一天喝酒喝到吐了,2007年的最后一天没有喝酒,这一顿没有酒,也不需要酒,很开心地和老朋友吃了顿饭,晚上四个人在外面游荡,到很晚才回去。很久很久没有这样子开心了,也许是一些事一直压在心里的缘故,现在终于可以释怀,也未尝不是一件好事。

之后就是2008年,从一开始就注定要忙碌的2008年,期终就在眼前了。

前几天一直对VHDL这个烂语言很无语,明明觉得逻辑很正确的代码,结果总是不对。昨天在crow同志的帮助下终于搞定了,感谢crow同志,也感谢老师一直让我用实验室,我在那里混的时间可不短了。

昨天下午终于把传说中的dll编译好了,于是乎我们的Othello终于有了可测试的平台,再加上前一周搞到的系数,瞬间我们的Othello成了打遍天下无敌手的Bug。现在还差历史启发以及其它特征的系数,如果将这几个综合起来应该可以再一次对棋力有很大的提升。还剩最多半个月的时间,争取弄出一两个吧,这样子PPCA这门课也算是有一个圆满的结果了。

至于企业策划与实践这门课,实在没什么想法,现在也只能勉强凑一个文档还有一个ppt应付一下了,不管怎样还是感谢老师之前给了我一个寻找失落感的机会。

流水账差不多记好了,就这样,继续动漫去了。。。

12月26日

退出

我一直很喜欢自己冲动的性格,因为我觉得什么都不敢做那不是男人。常常会有些冲动的想法,只要是自己能够承担后果的事情,我都会选择去做。

这一次,我又冲动了,并且我又要去承担冲动的后果。

我选择退出,不属于我的东西终究该远离吧,也许这真是欧氏空间的两条相交的直线,曾经有一个交点,之后是无尽的远离。。。

12月9日

12月09号

这个星期一直在研究Othello,很奇妙的东西。本来觉得IEEE的文章质量还是不错的,不过这周之后我对某些文章彻底绝望了。

Temporal Difference Learning Versus Co-Evolution for Acquiring Othello Position Evaluation

这篇文章发表于Proceedings of the 2006 IEEE Symposium on Computational Intelligence and Games(CIG 2006)

Temporal Difference Learning of an Othello Evaluation Function for a Small Neural Network with Shared Weights

这篇文章发表于Proceedings of the 2007 IEEE Symposium on Computational Intelligence and Games (CIG 2007)

Evolutionary Othello Players Boosted by Opening Knowledge

这篇文章发表于2006 IEEE Congress on Evolutionary Computation

上面三篇文章貌似代表了最近Othello研究的最新成果,基本上都是用GA或者神经网络,还给出了不同AI在Tournament中的得分状况。

image

三篇文章都指出CEL的AI是最强的,我一开始也这么认为,于是用文章给的参数写了一个估价函数。本来对这个AI期望很高的,结果用使用这个估价函数的AI跟我们目前的AI对战,双方各执黑白一次,从搜索1层到搜索7层,CEL的AI完败。

我以为是我的函数写错了,去论文的作者的网站下了一个她的Sample,再下仍然是完败。。。

对这种文章完全没有想法了,本来以为这个上面的文章都不错的,结果居然是这个样子。。。交大的电院博士生毕业就要求一篇IEEE,看起来原来就这个水准的也可以毕业了。。。

今天参加了第十届上海市慈善慢跑,看到那么多人来参加其实还是很感动的。一只觉得中国人对慈善事业不够热心,今天看到有这么多普通市民参与其中,顿时看到了希望。也许现在的问题都是暂时的,几代之后我们的后代们也能看到一个充满爱与责任的社会吧。

回来后就一直睡到晚上,去讲了PPCA的ppt,Game Theory,本来觉得ppt这次做得很漂亮的,按照正常讲东西的状态来说应该很完美。不过么貌似这个ppt做的太早了,两周的时间过后我连程序写得什么都不记得了。。。糟糕的presentation啊。。。

还有逻辑作业没做,现在好好研究一下:)

12月1日

贴歌词

今天看了三国志的动漫,感觉片尾的音乐很好,贴贴歌词微笑

风姿花传-----谷村新司
风は叫
ぶ人の
世の哀しみを
星に抱
かれた
静寂の中で
胸を开
けば燃ゆ
る血潮の赫は
共に混
ざるて大
いをる流れに
人は梦みる
ゆえに梦く
人は梦みる
ゆえに生きるもの
阿啊阿啊
谁も知らない
阿啊阿啊
明日散る花さえも
·°★·°∴°☆.·°∴°.☆°★°∴°
固い契
り烂漫
の花の下
月を饮
み甘す
宴の杯
军は埽
らず残さ
れて伫みば
肩にあ
の日の誓
いの花吹雪
人は信じて
そして破れて
人は信じて
そして生きるもの
阿啊阿啊
谁も知らない
阿啊阿啊
明日散る花さえも
·°★·°∴°☆.·°∴°.☆°★°∴°
国は破れて
城も破れて
草は枯れても
风は鸣き渡る
阿啊阿啊
谁も知らない
阿啊阿啊
风のその姿を
阿啊阿啊
花が传える
阿啊阿啊
风のその姿を
·°★·°∴°☆.·°∴°.☆°★°∴°
---end---

6月28日

新的Blog

鉴于MSN的Blog太烂,我换了新的Blog,以后就在
写了:)
6月26日

知道分数以后。。。。。。

      今天知道了自己的分数,639,湖北省累计到这个分数有503人,貌似不是很好的分数。知道分数之前呢,我估分640,然后某天做了一个梦梦到看到分数是637,今天发现这两个数字都比较接近啊,看来我的感觉实在是很准的。
      最近刚刚过了18岁生日,终于成年了。父母的生日礼物是一台Sony的笔记本电脑,VGN-FE18C,T2400 (1.83GHz)的CPU,1G内存,80GB硬盘,15.4的屏幕,GeForce7400 显卡,256MB显存,DVDRW,还有内置摄像头,实在是非常爽,另外还受到了两个很特殊的小礼物,我都会珍藏的
      在迷茫中,走完了高中,心情很复杂,短短的三年经历了太多太多。。。。。。
      不知我为何做出从武钢三中转到华师一来的决定,也许是一时头脑发热吧,也许这个决定让我最终与金牌无缘,但有什么好后悔呢,或许我的一生都得益于这个冲动的决定吧:)初到华师一,一切都那么新鲜,梦想中的高中原来就是这样的------白天坐在只有40多人的教室里上课,晚自习干自己的事,没有老师上课,回寝室后一群人躺在床上聊天,憧憬美好的高中以及未来,想着三年后可以去清华或者北大。。。。。。生活过得很滋润,虽然每天都要和N多的题目打交道,不过感觉是很好的,毕竟这是在向自己的梦想走去。
      高一时莫名其妙地捡起了数学竞赛并以此为业,希望可以实现多年的梦想,由此开始了我的咖啡生涯。每天晚自习至少一杯\罐咖啡,每天在正课外看数学书近10小时,短短的一个学期就学完了几套竞赛教材,寒假还去北京玩了一趟。虽说是个很垃圾的冬令营,不过讲义上的题目还是蛮有意思的,我们也顺便买了几本数学书,以后这些书成为了宝贝书:)这样看来,参加培训的唯一意义就是买书。。。。。。非常Easy的考试题,虽然说是两个小时的,我花了半个小时就搞定了,又干坐了半个小时后实在受不了了就交卷离开。我和叶出去逛了一大圈,下午的颁奖仪式我们也没去。我们两个都犯了低级错误,得了两个二等奖,阿柳同学得了唯一的一个一等奖,这样前三名就被我们学校的三个人包了。之后就是不到一周的寒假,这么短的假期实在是不爽,不过也没办法,谁要我们是理科实验班呢?高一下上了没几天课我就搬去小教室了,在初中部找了一间大教室,我们几个人用,除了周一上午有一个三道题的测试,剩下时间都是自习。日子过得倒是舒畅,每天早上睡到7点多起来去教室,第一节下课前去吃早饭,第五节下课前吃午饭,下午亦如此。。。。。。就这样,日子一天天过去,中间我组织了一次到森林公园的春游,参加了一个创新杯数学竞赛,拿了一个一等奖。后来金牌发下来,我们三个一人一个,就把牌牌撤下来弹硬币玩,实在是消极:)再往后就搬家了,从洪山校区搬到了武昌校区,暑假开始上了几天课就放假了。本来这是个好消息的,因为这样我们应该有近20天的假期,实在是很难得,结果我在家4天就又被老师召唤到了学校。我,叶之林还有洪裕三个人上午在办公室自习,做卷子,下午和高二理科班的一起考试,晚上自己安排。这段时间搬到了公寓,日子过得很好,晚上可以从六点开始做题一直到两点左右,这样一天晚上就可以完成一份冬令营的试题,感觉相当好。8月又去了一趟北京,这回住在清华附中,参加2004年的协作体夏令营。我和高三的人每天除了听听课,就是在清华北大瞎逛,把路都混熟了。现在呢,他们大多都在那里了,我却只能呆在武汉继续度过我的大学。。。。。。可悲啊!!!
  高二一开始就是联赛,这是第一次巨大的打击,我光荣得获得了二等奖,差几分一等奖,郁闷的人。考完联赛马上就是社会实践,一次很有意思的集体活动。在农村的一周过得非常愉快,看到了很多有趣的东西,也让我看到了我们国家军队的落后。回来以后要写社会实践的论文,我就花了一个通宵的时间写了一篇《新世纪的中国人名解放军军队建设》,长达19页,结果居然连三等奖都没评上,气死我了。社会实践后,我在计算机组呆了一个月,后来我决定我这辈子就搞计算机了。在计算机组的日子里,每天都充满了欢笑,整个小组就像一个家,我也学得很多很快。后来的NOIP算是第二个打击,如此简单的题目居然没有一等奖。。。。。。两件事让我郁闷了相当长的一段时间,实在是没什么话好说的。后来很平静的度过了高二上的剩下的时间,我赢来了迄今为止最长的假期--一个月的寒假,不过每天都在和题典奋斗,我一个假期搞定了两本题典,还做了大量的其它的题目,算是收获颇丰吧。一开学就去参加国家集训队的旁听,最后的成绩并不理想,不过我这次结识来自全国各地的竞赛选手,也不虚此行。经过一个学期的准备,我又一次参加了协作体夏令营,这回是在大连,一个美丽的城市。虽然考试时在发烧,我还是获得了一等奖,算是运气好吧。在大连期间,每天晚上都比较自由,我就在外面四处逛,某日有幸找到了一个视野极佳的位置,可以俯瞰整个大连夜色,实在是美极了!可惜的是这美景仅有我一人独享,他们都懒得走到这么远的地方来,就如王安石在《游褒禅山记》中所说一样。
  回来后就是高三了,又搬了一回家,来到了偏僻的鸟不拉屎的江夏区。。。。。。郁闷的备考生活,中间其它小组接连考挂,本来以为这回我们会人品大爆发的,事实证明我们的人品都被阿柳抽干了,我们全军覆没,唯有阿柳一路杀进了国家队:)第三次打击之后我马上开始准备最后一次NOIP,这次是为我的前途一搏了。结果呢,我又考挂了,简直是不可思议。。。。。。第四次打击让我绝望了,也许我就不该搞竞赛吧,那现在怎么办呢??????大学怎么办???我甚至产生了去南开学数学的打算,这个是我唯一可以保送去的学校,貌似还不错。还有一个去法国的机会,还有其他任何学校的自主招生的机会,不过我最终都放弃了。。。我明白从小到大,我都一路走来,不管多么困难,我从来都没有放弃过,难道这个时候我就可以这么轻易的放弃?还有六个月啊!事实证明我的决定是对的,经过6月的艰苦备考生活,我的总分从510到579,到519,到570,到610,到661,再到最后高考的639,虽然不是很理想,不过还是有华工计算机系上的,这就足够了。对于我来说,用六个月的时间再加上高中总共上课一年取得这样的成绩,已经很满足了:)
  然而高考这个东西总是有人欢喜有人愁的,很多人考的并不理想,现在正处在极度的郁闷之中,这是很正常的,就像我连续N次打击又放弃了所有的机会时一样。不过,我个人认为再惨也不会比我惨,我现在都过得很好,所以那些人也应该充满希望的!相信未来是自己的,将未来把握在自己手中,生命很快就会充满阳光的!
  就这样,还要做项目,准备面试,希望可以参加面试的:)
5月31日

终点?开始?

      不知不觉中,以前想者很痛苦的六个月过去了,马上就要高考了。。。。。。
      对于我来说,高考一直只是一种形式上的东西,仅仅在某种意义上表明这是高中生活的终点,大学生活的开始吧。现在呢,即将很平静面对它,希望我可以用我三年的汗水把它敲得粉碎:)
      还要复习,就不说太多,希望理科试验班的每一个人都可以考得很好,还有Allen可以梦想成真:)
3月31日

等待

      已经回班上课四个月了,今天刚刚考完八校联考,真的很无聊。。。。。。也许是懒散惯了,这样的生活过的很郁闷。幸好只有两个月了,不然恐怕真的会疯掉的。
      最近抽时间复习了一下Delphi,写了一个读图片数点的程序。自己认为写的不错,程序没有什么Bug,功能也比较让人满意(客户需求),顺便学了一下怎么处理图片信息,以后有时间我也可以写一个PhotoShop了:)
      下面把源代码贴出来,留个纪念:)
 
picture5(V1.1.2.3)
 
Picture.DPR
 
program Picture;
uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {AboutBox},
  Unit3 in 'Unit3.pas' {Frorm3},
  ImageProcessingPrimitives in 'ImageProcessingPrimitives.pas',
  RealColorLibrary in 'RealColorLibrary.pas',
  ColorLibrary in 'ColorLibrary.pas',
  GraphicsConversionsLibrary in 'GraphicsConversionsLibrary.pas',
  IEEE754 in 'IEEE754.pas';
{$R *.RES}
begin
  Application.Initialize;
  Application.Title := '图片信息统计系统';
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TForm3, Form3);
  Application.Run;
end.
 
Unit1.pas
 
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ExtCtrls, ExtDlgs, StdCtrls, ComCtrls, ImgList, StdActns,
  ActnList, ToolWin, ColorLibrary, XPMan, Buttons;
type
  TForm1 = class(TForm)
    MainMenu1: TMainMenu;
    File1: TMenuItem;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    guanbi1: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    Image1: TImage;
    OpenPictureDialog1: TOpenPictureDialog;
    N11: TMenuItem;
    Panel1: TPanel;
    StaticText1: TStaticText;
    StaticText2: TStaticText;
    StaticText3: TStaticText;
    Edit1: TEdit;
    Edit2: TEdit;
    BitBtn1: TBitBtn;
    procedure N3Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure Image1Click(Sender: TObject);
    procedure guanbi1Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
    function calc:Double;
    function AreRGBTriplesEqualA(CONST Triple1, Triple2:  TRGBTriple):  BOOLEAN;
    function AreRGBTriplesEqualB(CONST Triple1, Triple2:  TRGBTriple):  BOOLEAN;
    procedure FormCreate(Sender: TObject);
    procedure N6Click(Sender: TObject);
    procedure N11Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    Directory : String;
  end;
const COUNT=1;
var
  Form1         :  TForm1;
  BitmapTemp    :  TBitmap;
  BitmapHeader  :  pBitmapInfo;
  BitmapImage   :  POINTER;
  HeaderSize    :  DWORD;
  ImageSize     :  DWORD;
  Height,Width  :  DWORD;
  Current       :  TRGBTriple;
  Flag,Flag1    :  Boolean;
  Delta         :  Longint;
implementation
uses
   Unit2,Unit3,
   JPEG,
   ImageProcessingPrimitives,
   RealColorLibrary,
   GraphicsConversionsLibrary,
   IEEE754,
   Math;
{$R *.dfm}
procedure TForm1.N3Click(Sender: TObject);
begin
  if OpenPictureDialog1.Execute then begin
   Flag:=True;
   Directory:=OpenPictureDialog1.FileName;
   BitmapTemp:=LoadGraphicsFile(Directory);
   Image1.Picture.Bitmap:=BitmapTemp;
   GetDIBSizes(BitmapTemp.Handle, HeaderSize, ImageSize);
   GetMem(BitmapHeader, HeaderSize);
   GetMem(BitmapImage,  ImageSize);
   Form3.Label12.Caption:=Directory;
   Width:=BitmapTemp.Width;
   Height:=BitmapTemp.Height;
   Form3.Label13.Caption:=IntToStr(Width)+'×'+IntToStr(Height);
 //  Form3.Label13.Caption:=IntToStr(ImageSize);
  end;
end;
procedure TForm1.N4Click(Sender: TObject);
begin
  Close;
end;
procedure TForm1.Image1Click(Sender: TObject);
var
  dc  :  HDC;
  pt,pp  :  TPoint;
  ans :  TColor;
  s1,s2  :  String;
  temp : Longint;
begin
 if flag then begin
  dc:=GetDC(0);
  //ans:=GetDeviceCaps(dc, BITSPIXEL);
  GetCursorPos(pt);
  ans:=GetPixel(dc, pt.x, pt.y);
  Current.rgbtRed:=GetRValue(ans);
  Current.rgbtGreen:=GetGValue(ans);
  Current.rgbtBlue:=GetBValue(ans);
  ReleaseDC(0, dc);
  pp:=Image1.ClientOrigin;
  Form3.Label9.Caption:=IntToStr(Current.rgbtRed);
  Form3.Label10.Caption:=IntToStr(Current.rgbtGreen);
  Form3.Label11.Caption:=IntToStr(Current.rgbtBlue);
  Form3.Label5.Caption:='X='+IntToStr(pt.x-pp.x);
  Form3.Label6.Caption:='Y='+IntToStr(pt.y-pp.y);

  Form3.Shape1.Pen.Color:=RGBTripleToColor(Current);
  //BitmapTemp.Canvas.
  Temp:=trunc(Calc*10000);
  s1:='';s2:='';
  Str(Temp,s2);
  while(length(s2)<4)do s2:='0'+s2;
  if(s2='0000') then s1:='0'+'%'
  else s1:=IntToStr(Temp div 100)+'.'+s2[3]+s2[4]+'%';
  s2:='';Str(Calc,s2);
  Form3.Edit2.Text:=s1;
  Form3.Edit1.Text:=s2;
 end;
end;
procedure TForm1.guanbi1Click(Sender: TObject);
begin
  If Flag then begin
    BitmapTemp.Free;
    Flag:=False;
    Image1.Picture.Assign(Nil);
  end;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
  If Form3.Visible then Form3.Close
   else Form3.Visible:=True;
end;
function TForm1.calc:Double;
var
  Count   : Double;
  Total   : Double;
  i,j     : Longint;
  rowIn   : pRGBTripleArray;
begin
  Count:=0;Total:=Height*Width;
  for j:=0 to Height-1 do begin
   rowIn:=BitmapTemp.Scanline[j];
   for i:=0 to Width-1 do begin
    if AreRGBTriplesEqualA(rowIn[i],Current) then Count:=Count+1;
   end;
  end;
  Calc:=Count/Total;
end;
function TForm1.AreRGBTriplesEqualA(CONST Triple1, Triple2:  TRGBTriple):  BOOLEAN;
begin
    RESULT:=(Abs(Triple1.rgbtRed-Triple2.rgbtRed)<=Delta)and
            (Abs(Triple1.rgbtGreen-Triple2.rgbtGreen)<=Delta)and
            (Abs(Triple1.rgbtBlue-Triple2.rgbtBlue)<=Delta);
end;
function TForm1.AreRGBTriplesEqualB(CONST Triple1, Triple2:  TRGBTriple):  BOOLEAN;
begin
    RESULT:=(Abs(Triple1.rgbtRed-Triple2.rgbtRed)+
    Abs(Triple1.rgbtGreen-Triple2.rgbtGreen)+
    Abs(Triple1.rgbtBlue-Triple2.rgbtBlue)<=Delta);
end;
procedure TForm1.FormCreate(Sender: TObject);
var
  Input : TFileStream;
begin
  Flag:=False;Flag1:=False;Delta:=0;
{  Input:=TFileStream.Create(GetCurrentDir+'\Delta.ini',fmOpenRead);
  Delta:=Input.Read(Delta,Delta);
  StaticText4.Caption:=IntToStr(Delta);
  Input.Free;}
end;
procedure TForm1.N6Click(Sender: TObject);
begin
   if not Flag1 then begin
     Application.CreateForm(TAboutBox, AboutBox);
     Flag1:=True;
   end;
end;
procedure TForm1.N11Click(Sender: TObject);
begin
  If Panel1.Visible=False then begin
   Panel1.Visible:=True;
   Edit1.Text:=IntToStr(Delta);
   Edit2.Text:=IntToStr(Delta);
  end else Panel1.Visible:=False;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
Var  Output : File;
begin
  Delta:=StrToInt(Edit2.Text);
  Panel1.Visible:=False;
{  AssignFile(Output,GetCurrentDir+'\Delta.txt');Rewrite(Output,1);
  Writeln(Delta);CloseFile(Output);}
end;
end.

 
Unit1.dfm
 
object Form1: TForm1
  Left = 127
  Top = 249
  Width = 808
  Height = 534
  Caption = #22270#29255#20449#24687#32479#35745#31995#32479
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  Menu = MainMenu1
  OldCreateOrder = False
  OnCreate = FormCreate
  PixelsPerInch = 96
  TextHeight = 13
  object Image1: TImage
    Left = 0
    Top = 0
    Width = 800
    Height = 480
    Cursor = crCross
    AutoSize = True
    DragCursor = crCross
    OnClick = Image1Click
  end
  object Panel1: TPanel
    Left = 8
    Top = 40
    Width = 217
    Height = 129
    TabOrder = 0
    Visible = False
    object StaticText1: TStaticText
      Left = 8
      Top = 8
      Width = 64
      Height = 28
      Caption = #33394#23481#24046
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clWindowText
      Font.Height = -19
      Font.Name = 'MS Sans Serif'
      Font.Style = []
      ParentFont = False
      TabOrder = 0
    end
    object StaticText2: TStaticText
      Left = 8
      Top = 40
      Width = 28
      Height = 17
      Caption = #40664#35748
      TabOrder = 1
    end
    object StaticText3: TStaticText
      Left = 8
      Top = 64
      Width = 28
      Height = 17
      Caption = #35774#23450
      TabOrder = 2
    end
    object Edit1: TEdit
      Left = 48
      Top = 40
      Width = 150
      Height = 21
      ReadOnly = True
      TabOrder = 3
    end
    object Edit2: TEdit
      Left = 48
      Top = 64
      Width = 150
      Height = 21
      TabOrder = 4
    end
    object BitBtn1: TBitBtn
      Left = 72
      Top = 96
      Width = 75
      Height = 25
      Caption = #30830#23450
      TabOrder = 5
      OnClick = BitBtn1Click
    end
  end
  object MainMenu1: TMainMenu
    AutoHotkeys = maManual
    Left = 8
    Top = 8
    object File1: TMenuItem
      Caption = #25991#20214'(F)'
      object N3: TMenuItem
        Caption = #25171#24320'(O)'
        OnClick = N3Click
      end
      object guanbi1: TMenuItem
        Caption = #20851#38381'(C)'
        OnClick = guanbi1Click
      end
      object N4: TMenuItem
        Caption = #36864#20986'(X)'
        OnClick = N4Click
      end
    end
    object N1: TMenuItem
      Caption = #35270#22270'(V)'
      object N5: TMenuItem
        Caption = #23646#24615'(P)'
        OnClick = N5Click
      end
      object N11: TMenuItem
        Caption = #33394#23481#24046'(C)'
        OnClick = N11Click
      end
    end
    object N2: TMenuItem
      Caption = #24110#21161'(H)'
      object N6: TMenuItem
        Caption = #20851#20110#25105#20204'(A)'
        OnClick = N6Click
      end
    end
  end
  object OpenPictureDialog1: TOpenPictureDialog
    FileName = 'C:\Final Fantasy.jpg'
    Left = 32
    Top = 408
  end
end

 
Unit2.pas
 
unit Unit2;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls,ShellAPI, ExtCtrls, jpeg, Variants;
type
  TAboutBox = class(TForm)
    Panel1: TPanel;
    ProgramIcon: TImage;
    ProductName: TLabel;
    Version: TLabel;
    Copyright: TLabel;
    Comments: TLabel;
    OKButton: TButton;
    Label1: TLabel;
    StaticText1: TStaticText;
    StaticText2: TStaticText;
    StaticText3: TStaticText;
    procedure Label1Click(Sender: TObject);
    procedure OKButtonClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  AboutBox: TAboutBox;
implementation
uses
  unit1;
 
{$R *.dfm}
procedure TAboutBox.Label1Click(Sender: TObject);
begin
   ShellExecute(Handle,nil,PChar('mailto:montgomery_isaac@hotmail.com'),nil,nil,SW_NORMAL);
end;
procedure TAboutBox.OKButtonClick(Sender: TObject);
begin
   Close;
end;
procedure TAboutBox.FormClose(Sender: TObject; var Action: TCloseAction);
begin
   Unit1.Flag1:=False;
end;
end.
 
Unit3.pas 
 
unit Unit3;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ImageProcessingPrimitives, RealColorLibrary, ColorLibrary;
type
  TForm3 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Shape1: TShape;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form3: TForm3;
//procedure PreProcess;
implementation

{$R *.dfm}
{procedure PreProcess;
var
   FloatRow:  pSingleArray;
   i       :  integer;
   j       :  integer;
   PixelRow:  pRGBQuadArray;
   R,G,B   :  BYTE;
begin
  for j:=0 to Height-1 do begin
   PixelRow:=Scanline[j];
   FloatRow:=Scanline[j];
   for i:=0 to Width-1 do
   with PixeRow[i]do begin
     rgbred
   end;
  end;
end;}
procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Form3.Visible:=False;
end;
end.
 
Unit2Unit3的Form不好贴,就算了
 
里面还调用了ColorLibrary.pas,GraphicsConversionsLibrary.pas,IEEE754.pas,ImageProcessingPrimitives.pas,RealColorLibrary.pas这几个文件。
 
这是偶的第一个赚钱的程序,虽不知赚了多少不过也算是一种安慰吧,毕竟有人承认自己做的东西了,继续努力吧。至于高考么,目标只有华工计算机系了,相传去年它在湖北的分数线是648分,比清华的投档线低一分。。。。。。革命尚未成功,同志仍需努力啊:)

 
 
 
12月31日

Send a future letter

给十年后的自己发了一封信,看看十年后自己变了多少,希望那时我的梦想已经成真了.

New Start

      明天就是2006年,又一年过去了,不知道过去的一年中我又成长了多少。
      不知怎的,2005年是我最郁闷的一年了,数学和计算机都考杂了,没办法,只能接受命运吧,也许对于我来说高考才是惟一的出路吧。既然已经这样了,我也就只有努力了,但愿06年会好些。
      当然,总得来说,这一年过的还是不错的。协作体夏令营的那趟大连之旅是我终身难忘的,在沈阳也结交了很多朋友,五月还通过了软件设计师的测试,这些都算是05年的闪光点吧。
      但是这些都已经成为过去,接下来的路是很艰苦的,毕竟用六个月时间来完成高中三年的全部内容是一件很麻烦的事,希望我可以的。毕竟我的智商还是比较高的,情商也还不错,个人感觉良好:)
      就这样吧,休息一下,祝朋友们新年愉快:)