高手解一下难题!
直接有软件就更好感谢了,输入十个数,输出五个数,这五个数是第一个与第十个之和,第二个与第九个之和,第三个与第八个之和,第四个与第七个之和,第五个与第六个之和。后来每输入一个数,再输出五个数,代表最后一个数,原先的第一个数就不要了,第二个数变成了第一个数,…………第三个变成第二个,原先的最后一个成了第九个,输出的五个数,依然是这五个数是第一个与第十个之和,第二个与第九个之和,第三个与第八个之和,第四个与第七个之和,第五个与第六个之和
package test; import java.util.Scanner; class InputOutValue{ Scanner in=new Scanner(System.in); int nums[]=new int[10]; int temp; public void InputAll() { System.out.print("请输入10个数字: "); for(int i=0;i<nums.length;i++){ nums[i]=in.nextInt(); } System.out.println("所有的数字: "); for(int i=0;i<nums.length;i++){ System.out.print(nums[i]+" "); } } public void InputOne() { System.out.print("请输入1个数字: "); temp=in.nextInt(); for(int i=0;i<nums.length;i++) { if((i+1)<nums.length){ nums[i]=nums[i+1]; }else{ break; } } nums[9]=temp; } public void Out(){ System.out.println("\n第一个和第十个之和是: "+(nums[0]+nums[9])); System.out.println("\n第二个和第九个之和是: "+(nums[1]+nums[8])); System.out.println("\n第三个和第八个之和是: "+(nums[2]+nums[7])); System.out.println("\n第四个和第七个之和是: "+(nums[3]+nums[6])); System.out.println("\n第五个和第六个之和是: "+(nums[4]+nums[5])); } } public class Sum { public static void main(String[] args) { InputOutValue inputOutValue=new InputOutValue(); inputOutValue.InputAll(); inputOutValue.Out(); inputOutValue.InputOne(); inputOutValue.Out(); inputOutValue.InputOne(); inputOutValue.Out(); } }
import java.util.Scanner; import java.util.Queue; import java.util.LinkedList; import java.util.Collection; import java.util.ListIterator; public class JavaTest { public LinkedList getQueue() { System.out.println("请输入初始数据"); int i=0; LinkedList<Double> q=new LinkedList<Double>(); Scanner s=new Scanner(System.in); while(i<10) { q.offer(s.nextDouble()); i++; } return q; } public LinkedList changeQueue(LinkedList q,double d) { LinkedList<Double> queue=new LinkedList<Double>(); queue=q; queue.poll(); queue.offer(d); return queue; } public double[] getResurlt(LinkedList<Double> q) { int i=0,j=9; LinkedList<Double> queue=new LinkedList<Double>(); queue=q; double[] d=new double[5]; while(i<5) { d[i]=queue.get(i)+queue.get(j); i++; j--; } return d; } public void printQueue(LinkedList<Double> q) { double[] d=new double[5]; JavaTest test=new JavaTest(); System.out.println("现队列是:"+q); d=test.getResurlt(q); System.out.println("计算结果是:"); for(double i:d) { System.out.print(i+","); } System.out.println(); System.out.println("*********************"); } public static void main(String[] args ) { JavaTest test=new JavaTest(); LinkedList<Double> q=new LinkedList<Double>(); q=test.getQueue(); test.printQueue(q); System.out.println("*********************"); System.out.println("是否继续运算,如果继续运算请输入0"); Scanner s1=new Scanner(System.in); int sr=s1.nextInt(); while(sr ==0) { Scanner s=new Scanner(System.in); System.out.println("请输入下一个数"); double num=s.nextDouble(); q=test.changeQueue(q, num); test.printQueue(q); System.out.println("是否继续运算,如果继续运算请输入0"); sr=s1.nextInt(); } } }
String temp=s1.next(); if("#".equals(temp)) { break; }测试过可以.