2016-04-29 7 views
0

基本的に私は自分の出力の下の1行に表示するために、与えられた変数(ユーザ入力によって提供される)を出力するようにコードを取得しようとしています。私はそれがこれやりたい出力の次の行に入力を取得する

Enter 3 variables for array X: 
    2.1 
    3.5 
    5.4 

:ここ

Enter 3 variables for array Y: 
    2.1 3.5 5.4 

は私の全体のコードです:

import java.util.Scanner; 
public class Project4JamesVincent { 
    public static void main(String []args){ 
    Scanner input = new Scanner(System.in); 
    System.out.print("Enter the size of the arrays: "); 
    int size = input.nextInt(); 
    System.out.println(); 
    System.out.println("Enter " + size + " items for array X: "); 
    double[] arrayX = createArray(size, input); 
    System.out.println(); 
    System.out.println("Enter " + size + " items for array Y: "); 
    double[] arrayY = createArray(size, input); 
    System.out.print("The distance between x and y is: "); 
    double totalDistance = 0; 
    for (int i = 0; i<size; i++){ 
     totalDistance = totalDistance + Math.abs((arrayX[i]-arrayY[i])); 
    } 
    double averageDistance = 0; 
    averageDistance = (totalDistance/size); 
    System.out.printf("%3.2f", averageDistance); 
    }  
    public static double[] createArray (int n, Scanner enter){ 
     double[] tempArray = new double[n]; 
     for (int i=0; i<tempArray.length; i++){ 
      tempArray[i] = enter.nextDouble(); 
     } 
     return tempArray; 
    } 
} 

すべてのヘルプは高く評価されたとえば、私のコードは、この

を行います。あなたがこれまであなたcreateArray機能を変更した場合

+0

あなたはすべてのユーザーが番号を入力することができるようにしたいと言っています同じ行ですか? Enterキーではなくスペースで区切ります。 –

答えて

1

、あなたは1行に1行に1つずつ、またはすべてのいずれかの番号を入力することができます。

public static double[] createArray (int n, Scanner enter){ 
    double[] tempArray = new double[n]; 
    int pos=0; 
    while (enter.hasNext()) { 
     tempArray[pos++] = enter.nextDouble(); 
     if (pos>=n) 
      break; 
    } 
    return tempArray; 
} 
+0

ありがとうクリスチャン –

関連する問題