當前位置:編程學習大全網 - 編程軟體 - 求大神解答!java編程:15個教徒和15個非教徒在深海上遇險,必須將壹半的人投入海中,其余的人才

求大神解答!java編程:15個教徒和15個非教徒在深海上遇險,必須將壹半的人投入海中,其余的人才

20行代碼解決妳的問題,最後打印出的號碼就是非教徒的排序位置:

public static void main(String[] args) {

// 30個人圍成壹圈,這裏用List表示30個人。

List<Integer> personCycle = new ArrayList<Integer>();

for (int i = 1; i <= 30; i++) {

personCycle.add(i);

}

// 報數起始號碼

int callNo = 1;

// 循環條件:List還多余15個人。

while (personCycle.size() > 15) {

for (Iterator<Integer> it = personCycle.iterator(); it.hasNext();) {

Integer no = (Integer) it.next();

// 報數到9的時候,剔除出這個人。同時恢復報數起始號碼:1

if (callNo ++ == 9) {

System.out.println(no);

it.remove();

callNo = 1;

}

}

}

}

運行結果是:

9

18

27

6

16

26

7

19

30

12

24

8

22

5

23

  • 上一篇:明星們正在入場。為什麽布麗奇特·P . u . k .創造了壹個時尚偶像?
  • 下一篇:冒險島的石榴石和魔法石怎麽打最詭異?
  • copyright 2024編程學習大全網