No puedo corregir el error Error java.lang.ArrayIndexOutOfBoundsException
Publicado por Miriam (2 intervenciones) el 27/08/2016 21:23:21
El siguiente codigo hace la sumatoria de fuerzas, en sumaFx [s] me marca el error java.lang.ArrayIndexOutOfBoundsException y por mas que observo no me doy cuenta de porque me aparece este error. a lo que se , es porq estoy queriendo hacer mas grande el arreglo pero no entiendo como es esto. me urge resolverlo xfavor 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class SumaFuerza {
public static void main(String[]args) throws IOException{
InputStreamReader ent=new InputStreamReader(System.in);
BufferedReader al=new BufferedReader(ent);
int noF=0;
int i = 0,a=0, s;
double sumaX=0, sumaY=0;
double [] sumaFx=new double[noF];
double [] sumaFy=new double[noF];
System.out.println("Ingrese el numero de fuerzas a sumar");
noF=Integer.parseInt(al.readLine());
//valor de cada fuerza
int [] sumaFuerza=new int[noF];
for(s=0;s<noF;s++){
i++;
System.out.println("Introduzca el valor de la fuerza (" +i+ " de "+noF+")");
sumaFuerza[s]=Integer.parseInt(al.readLine());
}
//grados de cada fuerza
int [] gradosFuerza=new int[noF];
for(s=0;s<noF;s++){
a++;
System.out.println("Introduzca los grados de la fuerza con respecto al eje X(" +a+ " de "+noF+")");
gradosFuerza[s]=Integer.parseInt(al.readLine());
}
//analizar las fuerzas
for(s=0;s<noF;s++){
sumaFx[s]=cos(gradosFuerza[s])*sumaFuerza[s];
}
for(s=0;s<noF;s++){
sumaFy[s]=sin(gradosFuerza[s])*sumaFuerza[s];
}
sumaX=sumaX+sumaFx[s];
sumaY=sumaY+sumaFy[s];
}
}
Valora esta pregunta


0