zoukankan      html  css  js  c++  java
  • 捡石子小游戏程序解析

    问题:这是我上小学的时候,数学老师给我讲的一个问题,他说学校盖房子的时候,有一堆民工在一起玩这个游戏,有三堆石子,分别是3个,5个,7个,游戏规则就是两个人轮流拿,每个人一次只能够在一堆中拿,每一次只能够拿1-3个,谁拿了最后一个石子,谁就给对方一块钱。


    package com.hpu.bai; import java.util.Scanner; public class Cobble { public static void main(String[] args) { Cobble c = new Cobble(); c.print(); c.getCobble(); } int[] arr ={3,5,7}; int n = 15;int count =0; Scanner input = new Scanner(System.in); public int total(){ int m =0; for(int i=0;i<arr.length;i++){ m+=arr[i]; } return m; } public void print(){ for(int i=0;i<arr.length;i++){ System.out.println("第"+(i+1)+"堆还剩下"+arr[i]+"个石子##"); } } public void player(int b){ if(b%2 == 1){ System.out.println("该第一个人拿石子了"); }else{ System.out.println("该第二个人拿石子了"); } } public void getCobble(){ count++; if(n>1){ player(count); System.out.println("请输入你要在哪一堆石子中取石子"); int i = input.nextInt()-1; System.out.println("请输入你要在这堆石子中取几个"); int m = input.nextInt(); if(m>3){ System.out.println("你的输入有误,请重新输入"); count--; getCobble(); }else{ arr[i]=arr[i]-m; if(arr[i]<0){ System.out.println("石子快没了,要么你少拿点,要么你换一堆吧"); arr[i]= arr[i]+m; count--; } print(); n = total(); getCobble(); } }else{ if(count%2 ==1){ System.out.println("别拿了,第1位玩家你已经输了"); }else{ System.out.println("别拿了,第2位玩家你已经输了"); } } } }

     程序实现的关键就在与要有一个类似指针的变量来控制说明该谁拿了。当然如果把线程学好之后,这个程序还有更加可以改进的地方。java初学者QQ:623687677.大家可以互相交流,或者可以把代码运行一下。 

  • 相关阅读:
    评论啦 测试 PHP
    简易JSON格式化 PHP
    36进制 PHP
    CSS3字体阴影演示 PHP
    IE下获取所有客户端字体,设置背景色 PHP
    获取页面宽高数据 PHP
    recognize和recognition
    增强Activex控件,暴露method方法,在javascript中操作activex控件并调用web service方法
    javascript 也可以用try catch了.
    toggle
  • 原文地址:https://www.cnblogs.com/neruda/p/4025502.html
Copyright © 2011-2022 走看看