以下は乱数のプログラムから、最大値と最小値と平均値を求めるプログラムです。メソッドの引数に配列を書いています。
乱数のプログラムとこのプログラムはパイプでつなぎます。
import java.util.Scanner; public class Max_Min_Ave { public static void main(String[] args) { int[] data = new int[10000]; int n = load(data); System.out.printf("Max = %d\n", Max(data,n)); System.out.printf("Min = %d\n", Min(data,n)); System.out.printf("Ave = %f10\n", Ave(data,n)); } static int load(int[] data) { Scanner stdin = new Scanner(System.in); int n=0; while(stdin.hasNext()) { data[n]=stdin.nextInt(); n++; } return n; } static int Max(int[] data, int n) { int max=Integer.MIN_VALUE; for(int i=0; i<n; i++) if(max<data[i]) max = data[i]; return max; } static int Min(int[] data, int n) { int min=Integer.MAX_VALUE; for(int i=0; i<n; i++) if(min>data[i]) min=data[i]; return min; } static double Ave(int[] data, int n,int s) { for(int i=0; i<n; i++) s=s+data[i]; return s/n; } }
実行結果はエラーで、
クラス Max_Min_Aveのメソッド Aveは指定された型に適用できません。
System.out.printf("Ave = %f10\n", Ave(data,n));
^
期待値: int[],int,int
検出値: int[],int
理由: 実引数リストと仮引数リストの長さが異なります
エラー1個
と出ました。間違っているのは、平均を求める部分だというのは分かっているんですが、どう直していいか困っています。よろしくお願いします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。