zoukankan      html  css  js  c++  java
  • 五子棋判断输赢的算法描述.[小糊涂的灵感]

    function IsWin(IsBlack:boolean):boolean;
    label exit1;
    var
      i,j:integer;
      wtag:integer;
    begin
      IsWin:=false;
      if IsBlack then
        wtag:=1 else
        wtag:=2;
      for i:=0 to 18 do
        for j:=0 to 14 do
        begin
          {是否有行连成}
          if (i<15)
          and(Tag[i,j]=wtag)
          and(Tag[i+1,j]=wtag)
          and(Tag[i+2,j]=wtag)
          and(Tag[i+3,j]=wtag)
          and(Tag[i+4,j]=wtag)
          then
          begin
            IsWin:=True;
            goto exit1;
          end;
          {是否有列连成}
          if (Tag[i,j]=wtag)
          and(Tag[i,j+1]=wtag)
          and(Tag[i,j+2]=wtag)
          and(Tag[i,j+3]=wtag)
          and(Tag[i,j+4]=wtag)
          then
          begin
            IsWin:=True;
            goto exit1;
          end;
          {是否有主对角线连成}
          if (i<15)
          and(Tag[i,j]=wtag)
          and(Tag[i+1,j+1]=wtag)
          and(Tag[i+2,j+2]=wtag)
          and(Tag[i+3,j+3]=wtag)
          and(Tag[i+4,j+4]=wtag)
          then
          begin
            IsWin:=True;
            goto exit1;
          end;
          {是否有副对角线连成}
          if (Tag[i,j]=wtag)
          and(Tag[i-1,j+1]=wtag)
          and(Tag[i-2,j+2]=wtag)
          and(Tag[i-3,j+3]=wtag)
          and(Tag[i-4,j+4]=wtag)
          then
          begin
            IsWin:=True;
            goto exit1;
          end;
        end;
      exit1:
    end;

    //初始化棋盘.

    //画黑白棋子

    Never giveup. Thanks the world.
  • 相关阅读:
    查看电脑电池报告
    git上传文件
    k8s 跨namespace的service相互访问
    Shell中的${},##和%%的使用
    如何去掉excel表格中的单引号?
    忘密码时系统如何添加新账户!
    使用windows 脚本更改电脑的IP地址
    如何让WIN10自动修改自己的门牌号(IP)呢?
    Win7系统电脑共享打印机提示0x000006d9错误代码怎么办?
    ps抠图技术汇总
  • 原文地址:https://www.cnblogs.com/cnsoft/p/54716.html
Copyright © 2011-2022 走看看