java编写一个程序,我连续输入 1 2 3 4 5 6 7 这7个数字,请编写一个程序可以让我得到3 6 2 7

我连续输入 1 2 3 4 5 6 7 这7个数字,请编写一个程序可以让我得到3 6 2 7 5 1 4 也就是说这上面那连续的数字中 每3个数就输出一个数字 并每个数字只能输出一次 谢谢了 加注释的更加感谢.....
最好用数组和循环写出来

代码如下,我测试过了。。希望能帮到你。。。

import java.util.*;

public class Test {

public static void main(String[] args) {
List<Integer> data = new ArrayList<Integer>();//保存用户输入的数
List<Integer> result = new ArrayList<Integer>();//保存最后得到的结果
int num;//输入的数的个数
Scanner in = new Scanner(System.in);//用以接收用户输入
System.out.println("请输入待输入的数字个数");
num = in.nextInt();//获取用户输入的数字个数
System.out.println("请输入"+num+"个数");
for(int i=1;i<=num;i++){
data.add(in.nextInt());//接受用户输入的数据
}

int index = 0;
while(data.size()!=0){//还有元素余下
if(index>=data.size()) index = 0;
index++;
if(index>=data.size()) index = 0;
index++;
if(index>=data.size()) index = 0;
//加入到结果中
result.add(data.get(index));
data.remove(index);

}

System.out.println(result);//输出结果
}

}
运行结果:
请输入待输入的数字个数
7
请输入7个数
1 2 3 4 5 6 7
[3, 6, 2, 7, 5, 1, 4]追问

还有其他的答案吗 这个有点超出我的范围 比如说用基础一点写出来的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-27
var a:array[1..7] of longint;
i:longint;
begin
for i:=1 to 7 do
begin
read(a[i]);
end;
writeln('3 6 2 7 5 1 4');
end.
第2个回答  2011-07-27
public static void main(String args[])
{
List<String> list=new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
list.add("6");
list.add("7");
int temp=0;
while(list !=null)
{
for(int i=0;i<list.size();i++)
{
temp++;
if(temp==3)
{
System.out.println(list.get(i));
temp=0;
list.remove(i);
i--;
}
}
}
}
第3个回答  2011-07-27
排队的题目一样,
相似回答
大家正在搜