您的位置:首页 > 其它

报数游戏

2014-02-28 09:06 225 查看
    private int a = 0;//符合条件的个数    private int i = 1;    private int b = 0;//中间变量,方便进行int类型和String类型的变换    private String str = "";    private boolean next = true;//判断是否符合条件/** * 连续输出符合7的倍数或包含7的数     * @param m 要求需要满足的次数 * @return 返回0时表示不存在这样的数据 */public int number (int m){        while(a != m){    b = 0;            str = i + "";    if(i % 7 == 0){//7的倍数            a = a + 1;            b = i + 1;//当前数的下一个数            str = b + "";            way(0, m);        }else if(str.contains("7")){//含7的数        a = a + 1;            b = i + 1;            str = b + "";        way(1, m);        }else{        a = 0;        }//            System.out.println("得到的a的值:" + a);        i++;    }        if(m == 0){        return 0;        }else{        return i - m;        }}/** * 判断下一个数是否符合条件 * @param choice 前一个是7的倍数还是含有7的数,0:前一个是7的倍数;1:前一个是含有7的数 * @param m */public void way(int choice, int m){if(choice == 0){//前一个是7的倍数//System.out.println("7的倍数:" + i);while(next){        if(str.contains("7")){//含7的数        a = a + 1;        b = b + 1;        str = b + "";//        System.out.println("含7的数:" + b);        way(1, m);        }else{        next = false;        }        if(a == m){        next = false;        }        }}else{//前一个是含7的数//System.out.println("含7的数:" + i);while(next){        if(b % 7 == 0){//7的倍数        a = a + 1;            b = b + 1;            str = b + "";//            System.out.println("7的倍数:" + b);            way(0, m);        }else if(str.contains("7")){//含7的数        a = a + 1;        b = b + 1;        str = b + "";//        System.out.println("含7的数:" + b);        way(1, m);        }else{        next = false;        }        if(a == m){        next = false;        }        }}}
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  游戏