eu to fazendo um programa q pede:
Faça um programa que carregue 2 vetores de 5 elementos numéricos cada um e mostre um vetor resultante da intercalação desses dois vetores.
Meu código ficou assim:
import javax.swing.*;
public class ex3 {
public static void main(String[] args) {
int vetor1[] = new int[5];
int vetor2[] = new int[5];
int resultante[]= new int[10];
int j=1,valor1,valor2;
String a,b;
for( int i=1; i<=5;i++){
a = JOptionPane.showInputDialog(" Digite o " + i + " valor do vetor 1");
valor1 = Integer.parseInt(a);
vetor1[i] = valor1;
resultante[j] = vetor1[i];
j++;
b = JOptionPane.showInputDialog(" Digite o " + i + " valor do vetor 2");
valor2 = Integer.parseInt(b);
vetor2[i] = valor2;
resultante[j] = vetor2[i];
j++;
}
}
}
eu nunca consigo completar o laço for, sempre aparece isso:
"Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 5
at ex3.main(ex3.java:13)
E tb como eu faço pra imprimir o vetor resultante?
abraços
Quando ocorre este erro sigfica que você esta tentando uma posição do vetor que nao existe!!
tenta arrumar ai!!
Falou!
O promeiro elemento do vetor é vetor[0] e não vetor[1]… arruma o seu for ali que vai funcionar…
for(int i = 0; i<5; i++){}
Assim o for vai varrer todas as posições do seu array… do 0 ao 4 (5 posiões).
eu tentei isso mais ainda não deu certo :sad:
Amigo,o erro é na variável j…
Vc inicializou ela com 1.
Segue o código com o devido ajuste…
import javax.swing.*;
public class ex3 {
public static void main(String[] args) {
int vetor1[] = new int[5];
int vetor2[] = new int[5];
int resultante[]= new int[10];
int j=0;//o erro tinha sido aqui
int valor1,valor2;
String a,b,saida = "";
for( int i=0; i<5;i++){
a = JOptionPane.showInputDialog(" Digite o " + i + " valor do vetor 1");
valor1 = Integer.parseInt(a);
vetor1[i] = valor1;
resultante[j] = vetor1[i];
j++;
b = JOptionPane.showInputDialog(" Digite o " + i + " valor do vetor 2");
valor2 = Integer.parseInt(b);
vetor2[i] = valor2;
resultante[j] = vetor2[i];
j++;
}
for(int p = 0; p < 10 ;p++){
saida += resultante[p] + "\n";
}
JOptionPane.showMessageDialog(null,saida,"RESULTADOS",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}
Valew!!!
Vlw Cara!
agora deu certo.
