estou tentando fazer um trabalho da faculdade pra gerar um vetor com números aleatórios distintos e ordenar esse vetor pelos tres algorítmos básicos de ordenação: seleção, inserção e bolha. Também faz parte do trabalho "pegar" o tempo que cada um gasta para os mais diversos tamanhos de vetor. Agora o problema é justamente com a função clock() do time.h que tá funcionando de forma inesperada, ela simplesmente dá o mesmo tempo final e inicial, sendo que entre uma chamada e outra da função clock() o meu algorítmo faz uma das ordenações acima. No fim das contas o printf abaixo do meu código só imprime zero(final-inicial). Antes de implementar esse programa, eu já tinha feito um teste com a clock() só pra ver como funciona e tal e ela funcionou direitinho pra um programa bem pequeno, alguém pode me dar uma luz?
O algorítmo que TENTA calcular o tempo da geração do vetor, sem sucesso:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
clock_t n, tFim, tInicio, tDecorrido;
srand(time(NULL));
printf("Digite o tamanho do vetor a ser gerado: ");
scanf("%d", &n);
int vetor[n];
tInicio = clock();
printf("Tempo inicial: %d\n", tInicio);
int count, num;
for(count = 0; count < n; count++){
num = rand() % ( 2 * n ) + 1;
while(ExisteNoVetor(vetor, num, count))
num = rand() % ( 2 * n ) + 1;
vetor[count] = num;
}
tFim = clock();
printf("Tempo final: %d\n", tFim);
tDecorrido = tFim - tInicio;
printf("Vetor gerado em %d milisegundos:\n", tDecorrido);
Imprime(vetor, n);
return 0;
}
E aqui o algorítmo que, não sei porque, é mais especial que o outro, roda:
#include <stdio.h>
#include <time.h>
int main(){
int count, duracao, begin, end;
begin = clock();
for(count = 0; count < 10000; count++) printf("%d ", count);
end = clock();
duracao = end - begin;
printf("O laco for demorou %dms ...", duracao);
system("pause");
return 0;
}
Pergunta
Ark
Aew galera, beleza?
estou tentando fazer um trabalho da faculdade pra gerar um vetor com números aleatórios distintos e ordenar esse vetor pelos tres algorítmos básicos de ordenação: seleção, inserção e bolha. Também faz parte do trabalho "pegar" o tempo que cada um gasta para os mais diversos tamanhos de vetor. Agora o problema é justamente com a função clock() do time.h que tá funcionando de forma inesperada, ela simplesmente dá o mesmo tempo final e inicial, sendo que entre uma chamada e outra da função clock() o meu algorítmo faz uma das ordenações acima. No fim das contas o printf abaixo do meu código só imprime zero(final-inicial). Antes de implementar esse programa, eu já tinha feito um teste com a clock() só pra ver como funciona e tal e ela funcionou direitinho pra um programa bem pequeno, alguém pode me dar uma luz?
O algorítmo que TENTA calcular o tempo da geração do vetor, sem sucesso:
E aqui o algorítmo que, não sei porque, é mais especial que o outro, roda:Agradeço pela atenção, []'s.
Editado por ArkLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.