A、B二子被限制在己方3×3的格子(横向与纵向分别有三个可以运动到的位置)里运动。例如,在如上的表格里,A被正方形 {d10,f10,d8,f8}所包围,而B被正方形{d3, f3, d1, f1}包围。每一步,A、B分别可以横向或纵向移动一格,但不能沿对角线移动。另外,A不能面对B,也就是说,A和B不能处于同一纵向直线上(比如A在 d10的位置,那么B就不能在d1,d2以及d3)。
请写出一个能够生成A、B所有可能位置,并且在控制台上打印出来的C程序。要求在代码中只能使用一个变量。
方法一:
public void ChessDemo(){
Byte i=81;
for(;i>0;i--){
if(i/9%3==i%9%3)
continue ;
System.out.println("A="+(i/9+1)+",B="+(i%9+1)+"\n");
}
}
为什么这样能实现呢?不知原理
我的JAVA方法
public void ChessDemo(){
for(int i=1;i<=9;i++)
for(int j=1;j<=9;j++)
if(i%3!=j%3){
System.out.println("a= "+i+",b= "+j);
}
}
却定义了两个变量。。
分享到:
相关推荐
有关中国象棋将帅问题的算法和vc++程序实现
华为oj平台,编程训练高级题目:象棋将帅Java语言版。
JavaScript中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋utf8中国象棋...
中国象棋nes
cC语言中国象棋C语言中国象棋C语言中国象棋C语言中国象棋C语言中国象棋
这是一款人机对弈的中国象棋程序,可以选择搜索层数,可以悔棋。
中国象棋源码 中国象棋源码 中国象棋源码
Android自定义中国象棋,原创-------转载注明出处; Android自定义中国象棋,原创-------转载注明出处; Android自定义中国象棋,原创-------转载注明出处; Android自定义中国象棋,原创-------转载注明出处; ...
用c++实现了CChinaChess类,该类包含了五个方法,除方法5外每个方法对应一种实现思路。方法5实现了用一个变量实现三层循环。
中国象棋c++
立体中国象棋 立体中国象棋 立体中国象棋
中国象棋源码c++中国象棋源码c++中国象棋源码c++ 中国象棋源码c++中国象棋源码c++中国象棋源码c++
中国象棋全部规则,只需改变棋子上的名字就可使用
中国象棋HTML5源码
首款用虚幻4引擎打造的中国象棋
中国象棋 flash版 单机版 可人机对战也有棋谱对战不错
Python中国象棋源程序共包含五个程序文件一个图片素材包, chinachess.py 为主文件;constants.py 数据常量;pieces.py 棋子类,走法;computer.py 电脑走法计算;button.py按钮定义。目前电脑走法比较傻,有兴趣的...
java中国象棋
Java小游戏中国象棋源码
这是本人收集的有关中国象棋人工智能的论文集 2009计算机博弈专辑文章.pdf Computer Games Are an Efficient Tool for Event Game Theory.pdf MINORS HASH TABLE IN COMPUTER CHINESE CHESS.pdf 中国象棋机器博弈的...