почему это: Исключение из потока «main» java.lang.ArrayIndexOutOfBoundsException: 20 Мне нужно ввести 20 двойных чисел типа в зависимости от K, если k равно 0, все 20 должны быть случайными между -10 и 20, если нет, то они должны быть вычислены следующим образом: A [я] = A [я-1] Исключение Java-массива в этом конкретном случае
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Random;
public class Ld3151rdb258 {
public static void main(String[] args) {
double A[] = new double[20];
int K, i;
double C;
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
System.out.println("Andris Osītis IRDBD03 151RDB258");
System.out.print("K=");
try {
K = Integer.parseInt(br.readLine());
}
catch (Exception ex) {
System.out.println("input-output error");
return;
}
if (K==0) {
Random r = new Random();
for (i=1; i<20; i++)
A[i] = r.nextFloat()*30-10;
}
else
for (i=0; i<20; i++);
A[0] = 0.5;
for (i=1; i<20;i++);
A[i] = i-1*K/3.0d ;
System.out.println("A:");
for (i=0; i<20; i++) {
System.out.printf("%.1f\t", A[i]);
if (i==9) System.out.println();
}
for (i=0; i<10; i++) {
C = A[i];
A[i] = A[19-i];
A[19-i] = C;
}
System.out.println("\nA:");
for (i=0; i<20; i++) {
System.out.printf("%.1f\t", A[i]);
if (i==9) System.out.println();
}
}
}
Он работал Спасибо, вы спасли меня!: D –