martes, 26 de noviembre de 2013

Programa 14: Shell. Fernando Mtz R

#include <conio.h>
#include <stdio.h>
#include <stdlib.h>

main ()
{
    int n,i,k,*num,j,b,aux;
    
    printf("\n\n  Cuantos elementos habra en el arreglo:   ");
    scanf("%d",&n);
    num=(int *)malloc(sizeof(int)*n);

    b=n/2;
    
    //Llenar arreglo
    system("cls");
    for(i=0;i<n;i++)
    {
        printf("\n\n  Dame el elemento #%d del arreglo: ",i);
        scanf("%d",&num[i]);
    }
    
    
    do
    {
        for(i=b;i<n;i++)
        {
            aux=num[i];
            j=i-b;
            while ((j>=0)&&(aux<num[j]))
            {
                num[j+b]=num[j];
                j-=b;

            }
            num[j+b]=aux;
            printf("\n ");
            for(k=0;k<n;k++)
                printf("%i  ",num[k]);
        }
        b/=2;
        
    }
    while(b!=0);
    
    
    //IMPRIMIR ARREGLO ORDENADO
    printf("\n\n\n ***  ARREGLO ORDENADO  ***\n\n\n");
    for(i=0;i<n;i++)
    {
        printf("  %d \n",num[i]);
    }

    
}

No hay comentarios:

Publicar un comentario