| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 520 人关注过本帖
标题:能否用面向对象的方法实现
只看楼主 加入收藏
gxl741852
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2010-6-29
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
能否用面向对象的方法实现
猴子选大王      n个猴子围成一圈,从第一个猴子开始重复一二三,数到三的猴子从圈子中出来,最后剩下的一个猴子就是大王。编程模拟。此过程,输出猴子出圈的编号次序和大王的编号。
搜索更多相关主题的帖子: 面向对象 
2010-07-28 14:06
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:20 
程序代码:
import java.util.*;

class Monkey {
    static int number = 0;
    private int no;

    public Monkey() {
        number++;
        this.no = number;
    }
   
    public String toString() {
        return "Monkey" + no;
    }
   
}


public class MonkeyKing {
   
    public LinkedList<Monkey> list = new LinkedList<Monkey>();
   
    public MonkeyKing(int n) {
        for (int i=0; i<n; i++) {
            list.add(new Monkey());
        }
    }

    public void selectKing() {
        list = parseList(list,3);
        System.out.println("The monkey king is " + list.get(1));
    }
   
    public static LinkedList parseList(LinkedList list,int pos) {  
        while(list.size()>pos-1){  
            for (int i = 0; i < pos-1; i++) {  
                list.addLast(list.getFirst());  
                list.remove(i);  
            }  
            list.removeFirst();  
            System.out.println(list);  
        }     
        return list;  
    }   

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        MonkeyKing mk = new MonkeyKing(n);
        mk.selectKing();

    }

}

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2010-07-28 16:22
gxl741852
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2010-6-29
收藏
得分:0 
谢谢  我去研究研究
public class Main {
  public static void main(String[] args) {
int[] a=new int[500];
for (int i=0;i<500;i++){
a[i]=1;
}
int b=0;
int i=0;
int sum=0;
do{
    b=0;
sum=sum+a[i];
if(sum==3) {
sum=0;a[i]=0;
}
i=i+1;
if(i==500){
i=0;
for(int j=0;j<500;j++){
b=b+a[j];
}
}
}while(b!=1);
for(i=0;i<500;i++){
if(a[i]==1){
System.out.println(i);
}
}
}
}
只会普通   这个好像能用链表的把
2010-07-28 18:39
快速回复:能否用面向对象的方法实现
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026036 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved