2012-02-10 15 views
2

私はクラスでIDEを使用することを許可されていないので、これを前にする必要があります。私は、コンパイルして実行するにはTextPadを使用する必要があります。なぜ列挙エラーが発生しますか?

私は、次のエラーを取得しています:

F:\Java\Lab 3\AveragesLab.java:63: error: class, interface, or enum expected 
    public static double averageDbl (double[] arrayDbl) 
       ^
F:\Java\Lab 3\AveragesLab.java:66: error: class, interface, or enum expected 
    double average = 0.0; 
    ^
F:\Java\Lab 3\AveragesLab.java:68: error: class, interface, or enum expected 
    for(int i = 0; i < array.length; i++) 
    ^
F:\Java\Lab 3\AveragesLab.java:68: error: class, interface, or enum expected 
    for(int i = 0; i < array.length; i++) 
       ^
F:\Java\Lab 3\AveragesLab.java:68: error: class, interface, or enum expected 
    for(int i = 0; i < array.length; i++) 
            ^
F:\Java\Lab 3\AveragesLab.java:71: error: class, interface, or enum expected 
    } 
    ^
F:\Java\Lab 3\AveragesLab.java:73: error: class, interface, or enum expected 
    return average; 
    ^
F:\Java\Lab 3\AveragesLab.java:74: error: class, interface, or enum expected 
    } 
    ^
8 errors 

Tool completed with exit code 1 

コード

import java.util.Scanner; 

public class AveragesLab 
{ 
public static void main (String[] args) 
    { 

    // Create a scanner 
    Scanner input = new Scanner(System.in); 

    // Receive the integer values 
    System.out.print ("In this exercise you will be asked to enter a series of 10 numbers, twice.\n The first set will be integers or whole numbers and the second set will be doubles or \n numbers with a decimal. Please press the enter key after each number.\n"); 
    System.out.print ("Enter 10 integers or whole numbers, for example 75: "); 

     // Create the integer array 
     int arrayInt [] = new int [10]; 
     for (int i = 0; i < arrayInt.length; i++) 
     { 
      arrayInt [i] = input.nextInt(); 
     } 
     int averageInt = average (arrayInt); 

     System.out.println ("\nThe average of the intger array is: "+averageInt); 
     System.out.println(); 
     System.out.println(); 


     // Receive the double values 
     System.out.println ("Enter 10 double amounts including decimals, for example 75.5: "); 

     // Create the double array 
     double arrayDbl [] = new double [10]; 
     for(int i = 0; i < arrayDbl.length; i++) 
     { 
      arrayDbl [i] = input.nextDouble(); 
     } 
     double average = averageDbl (arrayDbl); 
     System.out.printf ("%7.2f\nThe average of the doubles array is: "+average); 
     System.out.println(); 
     System.out.println(); 
    } 


    public static int average (int [] array) 
     { 
     int sum = 0; 
     int average = 0; 
     for (int i = 0; i < array.length; i++) 
     { 
     sum = sum + array [i]; 
     } 
     average = sum/array.length; 
     return average; 
     } 
    } 

エラーaverageDblarray varが存在しない

public static double averageDbl (double [] arrayDbl) 
    { 
    double sum = 0.0; 
    double average = 0.0; 

    for(int i = 0; i < array.length; i++) 
    { 
     sum = sum + array [i]; 
    } 
    average = sum/array.length; 
    return average; 
    } 

} 

答えて

1

public static double averageDblの前に閉鎖}が多すぎます。 averageにはあまりにも多くのものがあった。

これでクラスは閉じられ、コンパイラは別のクラス/インタフェースを期待しています。

+0

それはそれを得ました!ありがとう! –

0

この線より下にあります。 3つの出現をarrayDblにします。

+0

私はarrayDblにすべての配列を変更し、エラーがまだそこにあります。 –

+0

私は2つのセクションからEclipseにコードを取り出し、私が推奨する変更を加えて、うまくコンパイルしました。 2つのセクションの間にコードがありますか?もしそうなら、そこに構文エラーがあります。おそらく余分なブレース? – colbadhombre

0

すべてのコードを投稿し、「エラーがこの行の下にある」というコメントを半分に分けていると仮定すると、かっこは一致しません。
"public static double averageDbl(double [] arrayDbl)"はクラスの外で定義されています。

0

これは良いです:

package homework; 

/** 
* AveragesLab description here 
* @author Michael 
* @link 
* @since 2/9/12 9:08 PM 
*/ 

import java.util.Scanner; 

public class AveragesLab { 
    public static void main(String[] args) { 

     // Create a scanner 
     Scanner input = new Scanner(System.in); 

     // Receive the integer values 
     System.out.print("In this exercise you will be asked to enter a series of 10 numbers, twice.\n The first set will be integers or whole numbers and the second set will be doubles or \n numbers with a decimal. Please press the enter key after each number.\n"); 
     System.out.print("Enter 10 integers or whole numbers, for example 75: "); 

     // Create the integer array 
     int arrayInt[] = new int[10]; 
     for (int i = 0; i < arrayInt.length; i++) { 
      arrayInt[i] = input.nextInt(); 
     } 
     int averageInt = average(arrayInt); 

     System.out.println("\nThe average of the intger array is: " + averageInt); 
     System.out.println(); 
     System.out.println(); 


     // Receive the double values 
     System.out.println("Enter 10 double amounts including decimals, for example 75.5: "); 

     // Create the double array 
     double arrayDbl[] = new double[10]; 
     for (int i = 0; i < arrayDbl.length; i++) { 
      arrayDbl[i] = input.nextDouble(); 
     } 
     double average = averageDbl(arrayDbl); 
     System.out.printf("The average of the doubles array is %7.2f ", average); 
     System.out.println(); 
     System.out.println(); 
    } 


    public static int average(int[] array) { 
     int sum = 0; 
     int average = 0; 
     for (int i = 0; i < array.length; i++) { 
      sum = sum + array[i]; 
     } 
     average = sum/array.length; 
     return average; 
    } 


    public static double averageDbl(double[] arrayDbl) { 
     double sum = 0.0; 
     double average = 0.0; 

     for (int i = 0; i < arrayDbl.length; i++) { 
      sum = sum + arrayDbl[i]; 
     } 
     average = sum/arrayDbl.length; 
     return average; 
    } 

} 
+0

これもうまくいった。ありがとう! –

関連する問題