Olá!
tem um exercício da faculdade que pede para ler dois vetores de 4 posições e imprimir um terceiro vetor que é formado pelos outros dois, por exemplo: vet_a[1 , 2 , 3 , 4] vet_b[5 , 6, 7, 8] vet_c[1, 2, 3, 4, 5, 6, 7, 8]
alguém pode me ajudar?
o codigo que eu fiz (não deu certo) foi o seguinte:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int i, j, k;
float vet_a[]=new float[4], vet_b[]=new float[4], vet_c[]=new float[8];
Scanner vet = new Scanner(System.in);
for(i=0; i<vet_a.length; i++){
System.out.println("Digite o valor da casa "+(i+1)+" :");
vet_a[i]=vet.nextFloat();
}
for(j=0; j<vet_b.length; j++){
System.out.println("Digite o valor da casa "+(j+1)+" :");
vet_b[j]=vet.nextFloat();
}
for(k=0; k<vet_a.length; k++){
vet_c[k]=vet_a[k];
}
for(k=4; k<7; k++){
vet_c[k]=vet_b[k];
}
for(k=0; k<=vet_c.length; k++) System.out.println("O vetor c eh: "+vet_c[k]);
}
[quote=senseitrash]
for(k=4; k<7; k++){
vet_c[k]=vet_b[k];
}
[/quote]
O problema está aqui. Os índices 4 a 7 do vet_c vão ter os índices 0 a 3 do vet_b.
eu modifiquei essa parte, mas ainda assim ele da problema, não imprimi o vetor…
import java.util.Scanner;
public class vettt
{
public vettt()
{
int i, j, k;
float vet_a[]=new float[4], vet_b[]=new float[4], vet_c[]=new float[8];
Scanner vet = new Scanner(System.in);
for(i=0; i<vet_a.length; i++){
System.out.println("Digite o valor da casa "+(i+1)+" :");
vet_a[i]=vet.nextFloat();
}
for(j=0; j<vet_b.length; j++){
System.out.println("Digite o valor da casa "+(j+1)+" :");
vet_b[j]=vet.nextFloat();
}
for(k=0; k<vet_a.length; k++){
vet_c[k]=vet_a[k];
}
for(k=4; k<7; k++){
for(j=0; j<vet_b.length; j++) vet_c[k]=vet_b[j];
}
for(k=0; k<=vet_c.length; k++) System.out.println("O vetor c eh: "+vet_c[k]);
}
}
public static void main(String[] args) {
int i, j, k;
float vet_a[] = new float[4], vet_b[] = new float[4], vet_c[] = new float[8];
Scanner vet = new Scanner(System.in);
for (i = 0; i < vet_a.length; i++) {
System.out.println("Digite o valor da casa " + (i + 1) + " :");
vet_a[i] = vet.nextFloat();
}
for (j = 0; j < vet_b.length; j++) {
System.out.println("Digite o valor da casa 2 " + (j + 1) + " :");
vet_b[j] = vet.nextFloat();
}
for(float t : vet_a){
System.out.println("Valor do vetor a " +t);
}
for(float t : vet_b){
System.out.println("Valor do vetor b " + t);
}
int x = 0;
for (float t : vet_a) {
vet_c[x] = t;
x++;
}
for (float t : vet_b) {
vet_c[x] = t;
x++;
}
for (float t : vet_c){
System.out.println("O vetor c eh: " + t);
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int i, j, k;
float vet_a[]=new float[4], vet_b[]=new float[4], vet_c[]=new float[8];
Scanner vet = new Scanner(System.in);
for(i=0; i<vet_a.length; i++){
System.out.println("Digite o valor da casa "+(i+1)+" :");
vet_a[i]=vet.nextFloat();
}
for(j=0; j><vet_b.length; j++){
System.out.println("Digite o valor da casa "+(j+1)+" :");
vet_b[j]=vet.nextFloat();
}
for (k = 0; k >< vet_c.length; k++) {
if (k < 4)
vet_c[k] = vet_a[k];
else
vet_c[k] = vet_b[k - 4];
}
for(k=0; k<=vet_c.length; k++) System.out.println("O vetor c eh: "+vet_c[k]);
}
Amigo acho que isso resolve, mudei um pouco o trecho entre as linhas 18 e 23.
abs