Informática, perguntado por miguelitoschumi, 5 meses atrás

Faça um programa que leia dois vetores de inteiros de tamanho 5. Passando os dois vetores por referência para uma função, a função deverá trocar os valores entre as posições correspondentes de cada vetor. Exemplo: se vet1 = {0, 1, 2, 3, 4} e vet2 = {5, 6, 7, 8, 9}, a chamada de função troca_vetor (vet1, vet2) deverá fazer com que vet1 = {5, 6, 7, 8, 9} e vet2 = {0, 1, 2, 3, 4}. Dicas: Devemos passar os vetores por referência para a função. Poderíamos alterar a função para ela receber um parâmetro “tamanho”, que seria um valor inteiro igual ao número de elementos dos vetores, para podermos trocar os valores de quaisquer vetores de tamanho = n. Atenção: O programa deverá obrigatoriamente usar funções.


gabrielstuchi22: em qual linguagem?

Soluções para a tarefa

Respondido por codando
1

Resposta:

#include <stdio.h>

void troca_vetor(int vet1[], int vet2[], int tamanho) {

   for(int i = 0; i < tamanho; ++i) {

       vet1[i] ^= vet2[i];

       vet2[i] ^= vet1[i];

       vet1[i] ^= vet2[i];

   }

}

int main(void) {

   int vet1[5];

   int vet2[5];

   printf("Entre com os valores de vet1: ");

   for(int i = 0; i < 5; ++i)

       scanf("%i", &vet1[i]);

   printf("Entre com os valores de vet2: ");

   for(int i = 0; i < 5; ++i)

       scanf("%i", &vet2[i]);

   troca_vetor(vet1, vet2, 5);

   printf("Valores vet1: ");

   for(int i = 0; i < 5; ++i)

       printf("%d ",vet1[i]);

   

   printf("\nValores vet2: ");

   for(int i = 0; i < 5; ++i)

       printf("%d ",vet2[i]);

   return 0;

}

Perguntas interessantes