A maior rede de estudos do Brasil

como resolver esse programa em c??

faça um programa que receba 2 array cada um com 5 valores ,um array c sera formao pela uniao do array a com b ,por fim imprima os valores c em ordem crescente.

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>


int main() {
int i;
int j;
int va[5]={10,1,2,5,4},vb[5]={78,36,25,6,21},vc[10];
int t;

for(i=0;i<10;i++)
{for(j=i+1;j<10;j++)


if(va[i]>va[j])
t=va[i];
va[i]=va[j];
va[j]=t;}

for(i=0;i<5;i++){
for(j=0;j<5;j++)

printf( "%d\n",va[i]);

if(vb[i]>vb[j])
t=vb[i];
vb[i]=vb[j];
vb[j]=t;}

printf("vetor b\n");
for(i=0;i<5;i++){

for(j=0;j<5;j++)
printf( "%d\n",vb[i]); }

for(i=0;i<5;i++)
return 0;
getch ();
}


9 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Neste algoritmo foi usado a linguagem C, pois tem funções que ajudam na junção dos arrays, onde é feita a leitura dos arrays, os valores podem ser substituídos e juntos em um terceiro, e feita a verificação enquanto houver elementos a serem lidos, sendo verificados por índices, depois eliminados os duplicados, já que é em ordem crescente, depois é feita a verificação do terceiro vetor, também por índices. Outra forma de resolver é, primeiro fazendo a leitura dos dois primeiros vetores e dentro de um BubbleSort, por exemplo, fazer a ordenação em um terceiro vetor e imprimi-lo. O algoritmo de Ordenção pode ser qualquer um, mas considerando que seu vetor será de tamanho pequeno, o BubbleSort resolve.


int []primeiro = {2, 3, 6, 9, 10};

int []segundo = {1, 4, 5, 7, 8};

int []terceiro = new int[primeiro.length + segundo.length];

int indicePrimeiro = 0, incideSegudo = 0, incideTerceiro = 0;

//enquanto os dois vetores tiverem elementos para percorrer

while (indicePrimeiro < primeiro.length && incideSegudo < segundo.length) {

if (primeiro[indicePrimeiro] < segundo[incideSegudo]) {

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

} else if (primeiro[indicePrimeiro] > segundo[incideSegudo]) {

terceiro[incideTerceiro++] = segundo[incideSegudo++];

} else {

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

++incideSegudo; //elimina a duplicacao de elementos

}

}

//passa os elementos que restaram a percorrer para o terceiro vetor

while (indicePrimeiro < segundo.length)

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

while (incideSegudo < segundo.length)

terceiro[incideTerceiro++] = segundo[incideSegudo++];

Neste algoritmo foi usado a linguagem C, pois tem funções que ajudam na junção dos arrays, onde é feita a leitura dos arrays, os valores podem ser substituídos e juntos em um terceiro, e feita a verificação enquanto houver elementos a serem lidos, sendo verificados por índices, depois eliminados os duplicados, já que é em ordem crescente, depois é feita a verificação do terceiro vetor, também por índices. Outra forma de resolver é, primeiro fazendo a leitura dos dois primeiros vetores e dentro de um BubbleSort, por exemplo, fazer a ordenação em um terceiro vetor e imprimi-lo. O algoritmo de Ordenção pode ser qualquer um, mas considerando que seu vetor será de tamanho pequeno, o BubbleSort resolve.


int []primeiro = {2, 3, 6, 9, 10};

int []segundo = {1, 4, 5, 7, 8};

int []terceiro = new int[primeiro.length + segundo.length];

int indicePrimeiro = 0, incideSegudo = 0, incideTerceiro = 0;

//enquanto os dois vetores tiverem elementos para percorrer

while (indicePrimeiro < primeiro.length && incideSegudo < segundo.length) {

if (primeiro[indicePrimeiro] < segundo[incideSegudo]) {

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

} else if (primeiro[indicePrimeiro] > segundo[incideSegudo]) {

terceiro[incideTerceiro++] = segundo[incideSegudo++];

} else {

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

++incideSegudo; //elimina a duplicacao de elementos

}

}

//passa os elementos que restaram a percorrer para o terceiro vetor

while (indicePrimeiro < segundo.length)

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

while (incideSegudo < segundo.length)

terceiro[incideTerceiro++] = segundo[incideSegudo++];

User badge image

Estudante

Há mais de um mês

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int vetorA[5] = {10, 2, 1, 5, 4};
    int vetorB[5] = {78, 36, 25, 6, 21};
    int vetorC[10];

    // concatena o vetorA e vetorB no vetorC
    for (int i = 0; i < 5; i++)
    {
       vetorC[i] = vetorA[i];
       vetorC[i + 5] = vetorB[i];
    }

    // ordenacao do vetorC
    for (int i = 0; i < 10; i++)
    {
       for (int x = i + 1; x < 10; x++)
       {
          if (vetorC[i] > vetorC[x])
          {
             int aux = vetorC[i];
             vetorC[i] = vetorC[x];
             vetorC[x] = aux;
          }
       }

       // imprime o vetorC ao mesmo tempo que vai ordenando
       printf("%d ", vetorC[i]);
    }
    return 0;
}

User badge image

Andre

Há mais de um mês

 

Neste algoritmo foi usado a linguagem C, pois tem funções que ajudam na junção dos arrays, onde é feita a leitura dos arrays, os valores podem ser substituídos e juntos em um terceiro, e feita a verificação enquanto houver elementos a serem lidos, sendo verificados por índices, depois eliminados os duplicados, já que é em ordem crescente, depois é feita a verificação do terceiro vetor, também por índices. Outra forma de resolver é, primeiro fazendo a leitura dos dois primeiros vetores e dentro de um BubbleSort, por exemplo, fazer a ordenação em um terceiro vetor e imprimi-lo. O algoritmo de Ordenção pode ser qualquer um, mas considerando que seu vetor será de tamanho pequeno, o BubbleSort resolve.


int []primeiro = {2, 3, 6, 9, 10};

int []segundo = {1, 4, 5, 7, 8};

int []terceiro = new int[primeiro.length + segundo.length];

int indicePrimeiro = 0, incideSegudo = 0, incideTerceiro = 0;

//enquanto os dois vetores tiverem elementos para percorrer

while (indicePrimeiro < primeiro.length && incideSegudo < segundo.length) {

if (primeiro[indicePrimeiro] < segundo[incideSegudo]) {

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

} else if (primeiro[indicePrimeiro] > segundo[incideSegudo]) {

terceiro[incideTerceiro++] = segundo[incideSegudo++];

} else {

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

++incideSegudo; //elimina a duplicacao de elementos

}

}

//passa os elementos que restaram a percorrer para o terceiro vetor

while (indicePrimeiro < segundo.length)

terceiro[incideTerceiro++] = primeiro[indicePrimeiro++];

while (incideSegudo < segundo.length)

terceiro[incideTerceiro++] = segundo[incideSegudo++];

Essa pergunta já foi respondida por um dos nossos especialistas