「java有n个人围成一圈」java有n个人围成一圈,从第一个人

博主:adminadmin 2023-01-13 20:42:06 481

今天给各位分享java有n个人围成一圈的知识,其中也会对java有n个人围成一圈,从第一个人进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

用JAVA编写,有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈

大致的思路:定义list集合,利用for循环添加1—n元素,利用if判断,对3取余为0的删除,查看最终输出结果。试着自己做,不懂再问

java编程 有n个人围成一个圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出

public class Increase {

public static void rep(boolean[] people) {

int i = 0,j=0,n=people.length,m=n;

while(n2){

i=++i%m;

if (people[i] == true){

j++;

if (j==3){

people[i] = false;

System.out.println(i);

n--;//总人数减1

j = 0;//到3从头数

}

}

}

}

public static void main(String[] args) {

boolean people[] = new boolean[10];

for(int i = 0; i10; i++){

people[i] = true;

}

rep(people);

}

}

main函数为测试例子,打印结果如下

3

6

9

2

7

1

8

5

有N个人围成一圈每次从1数起数到3就把那个人踢出去最后只保留一个人,用java集合和scanner

按照你的要求编写的Java程序如下

import java.util.ArrayList;

import java.util.List;

import java.util.Scanner;

public class DD {

 public static void main(String[] args) {

  System.out.print("请输入人数");

  Scanner sc=new Scanner(System.in);

  int N=sc.nextInt();

  ListInteger l=new ArrayListInteger();

  for(int i=1;i=N;i++){

   l.add(i);

  }

  int point=0,number=1;

  while(l.size()1){

   if(number%3==0){

    l.remove(point);

    --point;

   }

   ++point;

   ++number;

   if(pointl.size()-1){

    point=0;

   }

  }

  System.out.println("最后剩下的人为"+l.get(0)+"号");

 }

}

运行结果

请输入人数100

最后剩下的人为91号

java编程,有n个人围成一圈,顺序排号,从一号到n号,从第一个开始报数,(从1报到3)凡报到3的

这么经典的面向对象题目    以下代码仅供参考

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

int n;

Scanner scanner = new Scanner(System.in);

System.out.println("请输入一个正整数:");

n = scanner.nextInt();

scanner.close();

PersonQuan personQuan = new PersonQuan();

Person person;

for (int i = 1; i = n; i++) {

person = new Person(i);

personQuan.addPerson(person);

}

n = 0;

person = personQuan.first;

while (personQuan.first != personQuan.last) {

n++;

if (n % 3 == 0) {

//System.out.println("第" + n/3 + "次移除编号:" + person.id);

personQuan.removePerson(person);

}

person = person.right;

}

System.out.println("最后留下的是第" + personQuan.first.id + "号");

}

}

class Person {

int id;

Person left;

Person right;

public Person(int id) {

this.id = id;

}

}

class PersonQuan {

Person first;

Person last;

public void addPerson(Person person) {

if (first == null) {

first = person;

last = person;

person.left = person;

person.right = person;

} else {

last.right = person;

person.left = last;

person.right = first;

first.left = person;

last = person;

}

}

public int removePerson(Person person) {

if (first == last) {

return 0;

}

if (person == first) {

last.right = person.right;

person.right.left = last;

first = person.right;

} else if (person == last) {

first.left = person.left;

person.left.right = first;

last = person.left;

} else {

person.left.right = person.right;

person.right.left = person.left;

}

return 1;

}

}

关于java有n个人围成一圈和java有n个人围成一圈,从第一个人的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。