numeros aleatorios

manuelita
17 de Febrero del 2008
Hola a todos mi pregunta es la siguiente:

tengo que hacer un programa en c que calcule numeros aleatorios y los guarde de manera creciente

se que tengo que utilizar srand () y rand () .

lo que no se muy bien como hacer es lo de ordenarlo, seria por seleccion o inserccion, me han dicho que tengo que crear un arreglo, a cada elemento del arreglo guardale un número aleatorio (Ej A[i] = rand() ), luego ordenar el arreglo con algun algoritmo de ordenación. Pero no se como sera eso cuantos arreglos tendria que hacer? o solo bastaria con A[i] = rand()

muchas gracias

ahi va
17 de Febrero del 2008
#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main ()

{

int v[100],i,j,x,enc;

srand(time(NULL));

printf("el vector es:n");

for (i=0;i<100;i++)

{

v[i]=rand()%101;

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

}

for (i=0;i<100;i++)

{

j=99;

enc=0;

while (j>i)

{

if (v[j]<v[j-1])

{

x=v[j];

v[j]=v[j-1];

v[j-1]=x;

enc=1;

}

j--;

}

}

printf("nel vector ordenado es:n");

for (j=0;j<100;j++)

{

printf("%d ",v[j]);

}

getchar();

return 0;

}

se me olvid?
17 de Febrero del 2008
el metodo de ordenacion es el de burbuja, de los más rápidos. si quieres medir tiempos de ejecucion emplea ftime para medir los milisegundos. El vector es para 100 casillas. si lo quieres hacer generico emplea #define longitud 1000 y emplea por donde te haga falta longitud y longitud-1