Eaee galera …
to com dificuldade de resolver esse problema…
alguém pode me ajudar??
3) Faça um programa que leia dois vetores A e B de 10 elementos inteiros cada. A seguir troque o primeiro elemento de A com o 10º de b, o 2º elemento de A com o 9º de B,
assim por diante, até que se finalize a troca mostre os vetores antes e dewpois da troca.
travei na inversão dos vetores
…
aki vai uma parte do código
[code]import java.util.*;
class Ex3{
public static void main (String ARGS[]){
//declaração dos vetores
int A[] = new int [10];
int B[] = new int [10];
//declaração do operador scanner
Scanner le = new Scanner(System.in);
//leitura do vetor A
for (int i=0; i<=A.length; i++)
{
System.out.prinln(“Digite o valor de A[”+i +"]: ");
A[i] = le.nextInt();
}
for (int i=0; i<=B.length; i++)
{
System.out.prinln("Digite o valor de B["+i +"]: ");
B[i] = le.nextInt();
}
for(int i=0; i<=10 ; i++){
for(int j=10; j>=0; j--){[/code]
Desde já agradeço !!!
[quote=samuervas]Eaee galera …
to com dificuldade de resolver esse problema…
alguém pode me ajudar??
3) Faça um programa que leia dois vetores A e B de 10 elementos inteiros cada. A seguir troque o primeiro elemento de A com o 10º de b, o 2º elemento de A com o 9º de B,
assim por diante, até que se finalize a troca mostre os vetores antes e dewpois da troca.
travei na inversão dos vetores
…
aki vai uma parte do código
[code]import java.util.*;
class Ex3{
public static void main (String ARGS[]){
//declaração dos vetores
int A[] = new int [10];
int B[] = new int [10];
//declaração do operador scanner
Scanner le = new Scanner(System.in);
//leitura do vetor A
for (int i=0; i<=A.length; i++)
{
System.out.prinln(“Digite o valor de A[”+i +"]: ");
A[i] = le.nextInt();
}
for (int i=0; i<=B.length; i++)
{
System.out.prinln("Digite o valor de B["+i +"]: ");
B[i] = le.nextInt();
}
for(int i=0; i<=10 ; i++){
for(int j=10; j>=0; j--){[/code]
Desde já agradeço !!!
[/quote]
Meu caro,
em primeiro lugar, faça a leitura das matrizes A e B de uma vez só… economiza código… Coloque um textinho pra poder identificar o que vc está lendo.
Agora quanto à lógica, vc não precisa de 2 “for”. Basta 1… Então percorra a matriz A somente, trocando os valores de A[i] com os de B[9-i]… uma coisa assim…
Espero que ajude…
Primeiro dá para ler os valores dos vetores em um msm for, segundo para torcar os valores dos vetore vc vai precisar de uma variavel auxiliar para não ocorrer perda de valores… agora é só pensar mais um pouco q vc consegue!
Espero ter ajudado =)
Uma outra questão
Em java o primeiro índice começa com zero. Observe código
for (int i=0; i<=A.length; i++)
{
System.out.prinln("Digite o valor de A["+i +"]: ");
A[i] = le.nextInt();
}
Você está tentando acessar uma posição que não existe, sendo que você tem um vetor de tamanho dez, mas o último índice é nove e não dez.
Observe também os teus:
System.out.prinln("Digite o valor de B["+i +"]: ");
É println e não prinln.
Se você for novato, provavelmente vai gastar um tempinho (debugando) para solucinar o problema, mas na minha opinião essa é a única maneira de aprender.
Abraços :thumbup:
Discordo. Isso acabaria com a usabilidade do programa. Fica estranho fornecer o índice 0 de A, depois o 0 de B. O 1 de A, depois o 1 de B… e assim por diante. Se quer economizar código, é melhor fazer uma função do que comprometer a funcionalidade…
…Eaii galera.!!
então com ajuda de vocês fiz algumas modificações no código …e terminei dessa forma
[code]/*
3) Faça um programa que leia dois vetores A e B de 10 elementos inteiros cada. A seguir troque o primeiro elemento de A com o 10º de b, o 2º elemento de A com o 9º de B,
assim por diante, até que se finalize a troca mostre os vetores antes e dewpois da troca
*/
import java.util.*;
class Ex3{
public static void main (String ARGS[]){
//declaração dos vetores
int A[] = new int [10];
int B[] = new int [10];
//declaração do operador scanner
Scanner le = new Scanner(System.in);
//leitura do vetor A
for (int i=0; i < 10; i++){
System.out.println(“Digite o valor de A:”);
A[i] = le.nextInt();
}
for (int i=0; i < 10; i++){
System.out.println(“Digite o valor de A”);
B[i] = le.nextInt();
}
for (int i=0; i < 10; i++)
System.out.println(“A[”+i +"] ="+A[i])
for (int i=0; i < 10; i++)
System.out.println(“B[”+i +"] ="+B[i])
int tmp;
for(int i=0; i<10 ; i++){
tmp = a[i]
a[i] = b[9-i]
b[9-i] = tmp;
}
for (int i=0; i < 10; i++)
System.out.println("A["+i +"] ="+A[i])
for (int i=0; i < 10; i++)
System.out.println("B["+i +"] ="+B[i])
}
}[/code]
a propósito se não for pedir MUUUIITOO estou trampando agora, seria possivel alguem tentar compilar esse código pra mim e ver se tá tudo okay? 
Valeuu Galera!!