Está en la página 1de 2

/*Fecha: Jueves 12 de marzo de 2015

PROGRAMA: Este programa lo que hace es ordenar de forma ascendente y descendente un


arreglo unidimensional por medio de funciones*/
#include <iostream>
#include<cstdlib>
using namespace std;
void OrdenamientoAscendente(int[],int);

/*Prototipo*/

void OrdenamientoDescendente(int[],int);

/*Prototipo*/

int main()
{
int n;
cout << "Introduzca el tamao del arreglo: " ;
cin>>n;
int A[n];
for(int i=0;i<n;i++)
A[i]=rand()%101;
/*Se genera nmero aleatorios entre 0 y 100 inclusive*/
cout<<"Los elementos del arreglo son: \n\n";
for(int i=0;i<n;i++)
cout<<A[i]<<" ";
OrdenamientoAscendente(A,n);

/*Llamado de la funcin*/

cout<<"\n\n\n Los elementos del arreglo ya ORDENADOS de forma ASCENDENTE son:


\n\n\n";
for(int i=0;i<n;i++)
cout<<A[i]<<" ";
OrdenamientoDescendente(A,n);

/*Llamado de la funcin*/

cout<<"\n\n\n Los elementos del arreglo ya ORDENADOS de forma DESCENDENTE son:


\n\n\n";
for(int i=0;i<n;i++)
cout<<A[i]<<" ";
return 0;
}
/*#########################FIN DE FUNCIN MAIN ############################*/
/*########DEFINICIN DE FUNCIN ODENAMIENTO ASCEDENTE ##############*/
void OrdenamientoAscendente(int A[],int n)
{
int temporal;

for(int pasada=0;pasada<n-1;pasada++)
for(int i=0;i<n-1;i++)
{if(A[i] > A[i+1]) /*Intercambio de elementos si un elemento es mayor que el siguiente */
{ temporal=A[i];
A[i]=A[i+1];
A[i+1]=temporal;
}
}
}
/*######FIN DE DEFINICIN DE FUNCIN ODENAMIENTO ASCENDENTE ######*/

/*########DEFINICIN DE FUNCIN ODENAMIENTO DESCENDENTE #########*/


void OrdenamientoDescendente(int A[],int n)
{
int temporal;
for(int pasada=0;pasada<n-1;pasada++)
for(int i=0;i<n-1;i++)
{if(A[i] < A[i+1]) /*Intercambio de elementos si un elemento es menor que el siguiente */
{ temporal=A[i];
A[i]=A[i+1];
A[i+1]=temporal;
}
}
}
/*######FIN DE DEFINICIN DE FUNCIN ODENAMIENTO DESCENDENTE #####*/

También podría gustarte