ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Ordenamiento Interno Por Funciones


Enviado por   •  28 de Octubre de 2013  •  2.081 Palabras (9 Páginas)  •  251 Visitas

Página 1 de 9

#include<cstdlib>

#include<ctime>

#include<iostream>

#include<conio.h>

#include<stdlib.h>

using namespace std;

void generar();

bool checkrep();

int menu(int num[], int valor1);

void insercionBinaria();

void shell();

bool checkrep(int n, int num[], int valor1)

{

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

if(n == num[i])

return true;

return false;

}

void generar()

{

int valor1;

cout<<"\n\n\t Cuantos numeros desea generar? ";

cout<<"\n\n\t -> ";

cin >> valor1;

cout<<"\n\n\t ";

srand(time(NULL));

int n, num[valor1];

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

{

do

n = 1 + rand() % valor1;

while(checkrep(n, num,valor1));

num[i] = n;

cout<< num[i] << " ";

}

cout<<"\n\n\t Valores generados corretamente Presione Enter ";

getch();

menu(num, valor1);

}

int insercionBinaria(int num[], int valor1)

{

cout<<"\n\t Arreglo antes de ordenar \n\t";

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

{

cout<< num[i] << " ";

}

int i,j,aux,izq,der,m;

for(i=1;i<valor1;i++)

{

aux = num[i];

izq=0;

der=i-1;

while(izq<=der)

{

m=((izq+der)/2);

if (aux<num[m])

der=m-1;

else

izq=m+1;

}

j=i-1;

while(j>=izq)

{

num[j+1]=num[j];

j=j-1;

}

num[izq]=aux;

}

cout<<"\n\t Arreglo despues de ordenar \n\t";

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

{

cout<< num[i] << " ";

}

getch();

generar();

}

int shell(int num[], int valor1)

{

cout<<" \n\t Arreglo antes de ordenar \n\t";

for(int i=0;

...

Descargar como (para miembros actualizados) txt (4 Kb)
Leer 8 páginas más »
Disponible sólo en Clubensayos.com