取棋子,桌子上有25颗棋子,游戏双方轮流取子 java编程
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/06 23:33:57
取棋子,桌子上有25颗棋子,游戏双方轮流取子 java编程
取棋子.桌子上有25颗棋子,游戏双方轮流取子,每人每次最少取走一颗棋子,最多可取走3颗棋子.双方照这样取下去,直到取光所有的棋子.于是双方手中必然一方为偶数,一方为奇数,偶数方为胜者.请编程实现人机游戏.用java写
取棋子.桌子上有25颗棋子,游戏双方轮流取子,每人每次最少取走一颗棋子,最多可取走3颗棋子.双方照这样取下去,直到取光所有的棋子.于是双方手中必然一方为偶数,一方为奇数,偶数方为胜者.请编程实现人机游戏.用java写
import java.util.*;
public class baidu implements Runnable{
\x09private int num=25;
\x09private int numa=0;
\x09private int numb=0;
\x09private boolean a=true;
\x09private boolean b=false;
\x09/**
\x09 * @param args
\x09 */
\x09public static void main(String[] args) {
\x09\x09// TODO Auto-generated method stub
\x09\x09new Thread(new baidu()).start();
\x09}
class Roob implements Runnable
{
\x09public void Rget()
\x09{
\x09\x09while(true){
\x09\x09if(a==true&&num>0)
\x09\x09{
\x09\x09\x09a=false;
\x09\x09\x09b=true;
\x09\x09\x09int aNum=(int)Math.random() * 3;
\x09\x09\x09if(aNum>num)
\x09\x09\x09{
\x09\x09\x09\x09numa+=num;
\x09\x09\x09\x09num=0;
\x09\x09\x09}else{
\x09\x09\x09numa+=aNum;
\x09\x09\x09num-=aNum;
\x09\x09\x09}
\x09\x09\x09if(num==0)
\x09\x09\x09{
\x09\x09\x09\x09if(numa%2==0)
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09System.out.println("机器胜利啦!");
\x09\x09\x09\x09}
\x09\x09\x09\x09break;
\x09\x09\x09}
\x09\x09}
\x09 }
\x09}
\x09@Override
\x09public void run() {
\x09\x09// TODO Auto-generated method stub
\x09\x09Rget();
\x09}
}
class Human implements Runnable
{
\x09public void Rget()
\x09{
\x09\x09while(true){
\x09\x09if(num==0)
\x09\x09{
\x09\x09\x09if(numb%2==0)
\x09\x09\x09{
\x09\x09\x09\x09System.out.println("你胜利啦!");
\x09\x09\x09}
\x09\x09\x09break;
\x09\x09}
\x09\x09if(b==true&&num>0)
\x09\x09{
\x09\x09\x09b=false;
\x09\x09\x09a=true;
\x09\x09\x09while(true){
\x09\x09\x09Scanner in=new Scanner(System.in);
\x09\x09\x09System.out.println("请抽取1~3个:");
\x09\x09\x09int bNum=in.nextInt();
\x09\x09\x09if(bNum>=0&&bNumnum)
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09numa+=num;
\x09\x09\x09\x09\x09num=0;
\x09\x09\x09\x09\x09break;
\x09\x09\x09\x09}else{
\x09\x09\x09\x09numa+=bNum;
\x09\x09\x09\x09num-=bNum;
\x09\x09\x09\x09
\x09\x09\x09\x09}
\x09\x09\x09\x09
\x09\x09\x09\x09break;
\x09\x09\x09}
\x09\x09\x09\x09
\x09\x09\x09}
\x09\x09\x09
\x09\x09}
\x09 }
\x09}
\x09@Override
\x09public void run() {
\x09\x09// TODO Auto-generated method stub
\x09\x09Rget();
\x09}
\x09
}
@Override
public void run() {
\x09// TODO Auto-generated method stub
\x09new Thread(new Roob()).start();
\x09new Thread(new Human()).start();
}
}
public class baidu implements Runnable{
\x09private int num=25;
\x09private int numa=0;
\x09private int numb=0;
\x09private boolean a=true;
\x09private boolean b=false;
\x09/**
\x09 * @param args
\x09 */
\x09public static void main(String[] args) {
\x09\x09// TODO Auto-generated method stub
\x09\x09new Thread(new baidu()).start();
\x09}
class Roob implements Runnable
{
\x09public void Rget()
\x09{
\x09\x09while(true){
\x09\x09if(a==true&&num>0)
\x09\x09{
\x09\x09\x09a=false;
\x09\x09\x09b=true;
\x09\x09\x09int aNum=(int)Math.random() * 3;
\x09\x09\x09if(aNum>num)
\x09\x09\x09{
\x09\x09\x09\x09numa+=num;
\x09\x09\x09\x09num=0;
\x09\x09\x09}else{
\x09\x09\x09numa+=aNum;
\x09\x09\x09num-=aNum;
\x09\x09\x09}
\x09\x09\x09if(num==0)
\x09\x09\x09{
\x09\x09\x09\x09if(numa%2==0)
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09System.out.println("机器胜利啦!");
\x09\x09\x09\x09}
\x09\x09\x09\x09break;
\x09\x09\x09}
\x09\x09}
\x09 }
\x09}
\x09@Override
\x09public void run() {
\x09\x09// TODO Auto-generated method stub
\x09\x09Rget();
\x09}
}
class Human implements Runnable
{
\x09public void Rget()
\x09{
\x09\x09while(true){
\x09\x09if(num==0)
\x09\x09{
\x09\x09\x09if(numb%2==0)
\x09\x09\x09{
\x09\x09\x09\x09System.out.println("你胜利啦!");
\x09\x09\x09}
\x09\x09\x09break;
\x09\x09}
\x09\x09if(b==true&&num>0)
\x09\x09{
\x09\x09\x09b=false;
\x09\x09\x09a=true;
\x09\x09\x09while(true){
\x09\x09\x09Scanner in=new Scanner(System.in);
\x09\x09\x09System.out.println("请抽取1~3个:");
\x09\x09\x09int bNum=in.nextInt();
\x09\x09\x09if(bNum>=0&&bNumnum)
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09numa+=num;
\x09\x09\x09\x09\x09num=0;
\x09\x09\x09\x09\x09break;
\x09\x09\x09\x09}else{
\x09\x09\x09\x09numa+=bNum;
\x09\x09\x09\x09num-=bNum;
\x09\x09\x09\x09
\x09\x09\x09\x09}
\x09\x09\x09\x09
\x09\x09\x09\x09break;
\x09\x09\x09}
\x09\x09\x09\x09
\x09\x09\x09}
\x09\x09\x09
\x09\x09}
\x09 }
\x09}
\x09@Override
\x09public void run() {
\x09\x09// TODO Auto-generated method stub
\x09\x09Rget();
\x09}
\x09
}
@Override
public void run() {
\x09// TODO Auto-generated method stub
\x09new Thread(new Roob()).start();
\x09new Thread(new Human()).start();
}
}
请你参加一种游戏:有1996颗棋子,两人轮流取棋子,每次允许取其中2个,4个或8个,谁最后把棋子取完,就剩
今有棋子一百颗,甲乙两人做棋子的游戏,甲先取乙后取,两人轮流各一次,规定每次取P颗,P为1或20以内任意
一堆棋子共有2002粒甲乙两人玩轮流取棋子的游戏甲先取乙后取并且每次最多取7粒但不能不取
有16枚棋子在桌子上排成一排,甲乙两人轮流取棋子,每次至少取1枚,至多取2枚,由甲先取,谁取到最后一枚为胜.问:甲乙两人
有一个圆形的桌子上,小明和小芳玩摆棋子的游戏.游戏的规则是:每人每次取得1枚棋子放在桌子上,两人轮流摆.棋子之间不许覆盖
有7枚棋子,两人轮流取.
一堆棋子共有2002粒,甲,乙两人玩轮流取棋子的游戏,甲先取,乙后取,并且规定,每次取得棋子不能超过七粒,但不能不取,如
有2002个棋子,两人轮流取棋子,每次只允许取其中的2,4,8个,最后取完棋子者胜.问如何取胜
一堆黑白棋子,黑棋子的个数是白棋子的2倍,每次取黑棋子4颗白棋子3颗,若干次后白棋子取完,黑棋子还有16颗,黑白棋子各有
有棋子101枚.两人轮流取棋子每人每次至少取走一枚,最多取走走3枚,直到把棋子取完,谁取到最后一枚棋子,谁就获胜.假如你
桌子上放着1994颗棋子,小明于小强两人轮流从桌子上拿棋子,最少拿一颗,最多拿五颗,谁拿走桌上最后的
有1996个棋子,两人轮流取棋子,每次允许取其中2个、4个、或8个,谁最后把棋子取完,就算谁获胜.如果你想获胜,先取还是