[ Foro de C ]

Mayor a menor

30-Oct-2020 00:35
Invitado (Johan rodriguez )
1 Respuestas

Hola buenas noches, Estoy haciendo un programa que al ingresar dos cadenas organice los números de mayor a menor, solo e logrado organizar cada una de las cadenas pero no se como unirlas para organizarlas, lo unico que se puede usar es arreglos y funciones y es trabajado en c este es mi codigo.
#include <stdio.h>
#include<string.h>

void Arreglo(int ZZ[],int XX[],int aa,int bb)
{
for(int i=0; i<aa; i++)
{
for(int j=0; j<aa-1; j++)
{
if(ZZ[j] < ZZ[j+1])
{
int ORG = ZZ[j];
ZZ[j] = ZZ[j+1];
ZZ[j+1] = ORG;
}
}

}
for(int e=0; e<bb; e++)
{
for(int y=0; y<bb-1; y++)
{
if(XX[y] < XX[y+1])
{
int ORP = XX[y];
XX[y] = XX[y+1];
XX[y+1] = ORP;
}
}
}
printf("\n El orden es: \n");
for(int e=0; e<aa; e++)
{
printf("%d",ZZ[e]);
}
for(int e=0; e<bb; e++)
{
printf("%d",XX[e]);
}
while (ZZ>XX && XX>ZZ)
{


}






}

int main()
{
int a;
int b;
printf("Ingrese los datos de la primera cadena\n");
scanf("%d",&a);
int Z[a];
for(int O=0; O<a;O++)
{
printf("Ingreses los elementos \n");
scanf("%d",&Z[O]);
}
printf("Ingrese los datos de la segunda cadena\n");
scanf("%d",&b);
int X[b];
for(int I=0; I<b;I++)
{
printf("Ingreses los elementos \n");
scanf("%d",&X[I]);
}
Arreglo(Z,X,a,b);


}
Y este es el problema 3) Construye un programa en C con funciones que, al recibir como datos dos arreglos de tipo entero, desordenados, de N y M elementos respectivamente, genere un nuevo arreglo ordenado en forma descendente de N+M elementos de tipo entero, mezclando los dos primeros arreglos.
Ejemplo
Arreglo 1 [2 , 9 , 1]
Arreglo 2 [23 , 5 , 9, 88 , -2]
Salida: [88 , 23 , 9 , 9 , 5 , 2 , 1 , -2]


30-Oct-2020 10:10
Nacho Cabanes (+83)

Tu planteamiento de partida no es correcto. Te piden que generes un nuevo vector, no que muestres el resultado directamente en pantalla.

Hay (como mínimo) dos enfoques posibles:

El "trivial", que imagino que no es el que pretenden que uses, es volcar todo el vector 1 y luego todo el vector 2 a un nuevo vector de tamaño mayor, y luego ordenarlo.

El "otro" es que en cada pasada escojas el menor elemento de entre los dos vectores y lo añadas. Es más compleja, así que puede que deseen que intentes hacerlo así, para practicar el manejo de bucles y de vectores.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)