Ir para conteúdo
Fórum Script Brasil

bash

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Sobre bash

bash's Achievements

0

Reputação

  1. bash

    algo pra calcular o tempo.

    #include<stdio.h> #include<time.h> int main(void){ time_t t1,t2; int i; time(&t1); for(i=0;i<1000;i++){ printf("a multiplicacao de 3 numeros é %d \n",i*i*i); } time(&t2); printf("o tempo gasto foi %.2f",(float)(t2-t1)); getchar(); return 0; }
  2. bash

    ordenaçao quicksort

    estou com o problema na hora de ordenar por qsort de ordenacao está certa mas como estou usando alocação dinamica, a referencia não esta sendo passada corretamente, se alguém puder me ajudar ficarei grato, abaixo está po codigo. obrigado #include <stdio.h> #include <stdlib.h> void limpa_tela(void); int le_tam_vetor(void); long *aloca_vetor(int qtde); void preenche_vetor(long *vetor, int qtde); void copia_vetor(long *vetor1, long *vetor2, int qtde); void mostra_vetor(long *vetor, int qtde); void desaloca_vetor(long *vetor); void QSort (long *vetor, int ini, int fim); int main(void){ int qtde,fim,i,ini=0; long *ordenado, *desordenado; qtde = le_tam_vetor(); fim=qtde; ordenado = aloca_vetor(qtde); desordenado = aloca_vetor(qtde); preenche_vetor(desordenado, qtde); printf("desordenado\n"); mostra_vetor(desordenado, qtde); QSort(ordenado,ini,qtde); mostra_vetor(ordenado,qtde); desaloca_vetor(ordenado); desaloca_vetor(desordenado); return 0; } void limpa_tela(void){ system("cls"); } int le_tam_vetor(void){ int tam; do{ limpa_tela(); printf("Informe o tamanho do vetor: "); scanf("%d%*c", &tam); if(tam <=0 ){ printf("O tamanho do vetor deve ser maior do que zero!"); getchar(); } }while(tam <=0); return tam; } long *aloca_vetor(int qtde){ long *vetor; vetor = (long *)calloc(qtde, sizeof(long)); if(!vetor){ limpa_tela(); printf("Erro na alocação de memoria."); printf("Impossivel continuar a execucao."); exit(0); } return vetor; } void desaloca_vetor(long *vetor){ free(vetor); } void preenche_vetor(long *vetor, int qtde){ int cont; long valor; srand(time(NULL)); //inicializa a geracao randomica de numeros for(cont=0; cont<qtde; cont++){ valor = rand(); //rand() gera o num. randomico vetor[cont] = valor; } } void mostra_vetor(long *vetor, int qtde){ int cont; for(cont=0; cont<qtde; cont++) printf("%d\t", vetor[cont]); getchar(); } void QSort (long *vetor, int ini, int fim){ int i=ini; int f=fim; int pivo = vetor[ini]; int esq; int aux; esq=1; if (fim > ini){ while (i < f) { if (esq==1) { if (vetor[f]<pivo){ aux=vetor[f]; vetor[f]=vetor[i]; vetor[i]=aux; // esq=100; i=i+1; } else f=f-1; } else{ if (pivo<vetor[i]){ aux=vetor[f]; vetor[f]=vetor[i]; vetor[i]=aux; esq=1; f=f-1; } else i=i+1; } } QSort (vetor, ini, i-1); QSort (vetor, i+1, fim); } }
×
×
  • Criar Novo...