ここで私のエラーが見つかりませんか?
import java.util.Scanner;
class Code {
public static void main (String[] args) {
Scanner a = new Scanner (System.in);
System.out.println("Please, Enter Array Size : ");
int size = a.nextInt();
double[] arr = new double[size];
System.out.println("Enter Array elements : ");
for (int i = 0; i < size; i++) {
arr[i] = a.nextDouble();
}
int max = arr[0];
int min = arr[0];
for (int i = 1; i < size; i++) {
if (max < arr[i]) {
max = arr[i];
}
if (min > arr[i]) {
min = arr[i];
}
}
System.out.println("maximum is : " +max);
System.out.println("minimum is : " +min);
}
}
答え1
データ型が異なるため、エラーが発生します。定義した配列はdoubleデータ型ですがmin
、max
変数は型ですint
。したがって、double
データ型を次のように作成します。
double min,max;
min
とmax
のデータ型を保持するには、int
次のように配列要素を型変換する必要があります。
min=(int)a[0];
ただし、これはお勧めできません。