La Web Imágenes Vídeos Noticias Grupos Libros Gmail Más »
Grupos visitados recientemente | Ayuda | Acceder
Página principal de Grupos de Google
Mensaje del debate Un conflicto interminable con la prueba de escritorio y el shellSort

Ver analizado - Mostrar sólo mensaje de texto

Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Message-ID: <d6313efe-db09-4483-87e5-c5dc198e69dc@x29g2000prg.googlegroups.com>
Date: Fri, 21 Dec 2007 09:43:33 -0800 (PST)
Received: by 10.100.141.5 with SMTP id o5mr18005and.11.1198259013772; Fri, 21 
	Dec 2007 09:43:33 -0800 (PST)
In-Reply-To: <fbf63d51-1977-4903-bb34-1f739966a728@e67g2000hsc.googlegroups.com>
X-IP: 190.40.25.228
References: <fbf63d51-1977-4903-bb34-1f739966a728@e67g2000hsc.googlegroups.com>
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) 
	Gecko/20071008 Ubuntu/7.10 (gutsy) Firefox/2.0.0.6,gzip(gfe),gzip(gfe)
Subject: Re: Un conflicto interminable con la prueba de escritorio y el 
	shellSort
From: miguelcrux <miguelc...@gmail.com>
To: "=?ISO-8859-1?Q?Somos_C=F3digo_Libre?=" <somoscodigolibre@googlegroups.com>

Guay!, mucho C

On 4 dic, 13:46, sAfOrAs <dsafor...@gmail.com> wrote:
> Como andan todos,  a continuaci=F3n les presento este c=F3digo que fue
> modificado en parte por unos amigos y yo, queriamos enternder el
> algoritmo, pese a que el c{odigo funciona perfectamente... Se trata de
> un ordenamiento basado en el m=E9todo shell, pero con algunos artificios
> como el de la linea:   <code>for(inc =3D 1 ; inc<n;inc=3Dinc*3+1);</code>,=

> donde el inc incrementa acabada la ejecucion del algoritmo interno,
> pese a ello, al hacer la prueba de escritorio parece que el programa
> no tuviera un fin (se dar=E1n cuenta si lo hacen), o en todo caso a
> pique que no me estoy dando cuenta del error que estoy cometiendo, de
> todas maneras les paso el c=F3digo para que lo revisen.
> la libreria est=E1 en los repositorios...
>
> #include<iostream>
> #include"leearreglo.h"
> using namespace std;
> #define largo 50
> void ordenShell(int A[],int n)
> {
>
>   int i, j, inc, temp;
>
>   for(inc =3D 1 ; inc<n;inc=3Dinc*3+1);
>
>           while (inc > 0)
>           {
>                   for (i=3Dinc; i < n; i++)
>                   {
>                                 j =3D i;
>                                 temp =3D A[i];
>                                 while ((j >=3D inc) && (A[j-inc] > temp))
>                                 {
>                                         A[j] =3D A[j - inc];
>                                         j =3D j - inc;
>                                 }
>
>                                 A[j] =3D temp;
>                   }
>
>                   inc/=3D 2;
>           }
>
> }
>
> void main ()
> {
>     int A[largo],n;
>         do{
>         cout<<"Cantidad de numeros a ingresar: ";cin>>n;
>                 if(n<=3D0||n>largo)
>                         cout<<"Debe ingresar un valor  > a 0 y < a "<<larg=
o<<endl;
>         }while(n<=3D0||n>largo);
>
>     leeCadena(n,A);
>     ordenShell(A,n);
>     muestraCadena(n,A);
>
> }

Crear un grupo - Grupos de Google - Página principal de Google - Condiciones del servicio - Política de privacidad
©2009 Google