3.283 cursos gratis
6.261.824 alumnos
Publica tu curso gratis
Busca cursos gratis:
Estás aquí: mailxmail > Cursos de Informática > Programación > Metodología de la Programación > Segundo Ejemplo

Metodología de la Programación

Autor: Xavi Llunell
Curso:  4,54/5 4,54/5 (437 opiniones) |46907 alumnos|Fecha publicación: 23/05/2003

Capítulo 37:

 Segundo Ejemplo

Vamos a ver otro pequeño ejemplo para tratar con tablas. En esta ocasión, tenemos una tabla con 25 elementos que suponemos que ya está llena. Lo que queremos es dar la "vuela" a la tabla, digámoslo de otra manera, el elemento que está en la primera posición ha de ocupar la última y el elemento de la última deberá pasar a la primera. Ej.: La tabla: 1, 2, 3, 4, 5 después tendrá este aspecto 5, 4, 3, 2, 1. Hemos añadido números a las líneas para facilitar la explicación.

1.- Tabla[25]: Número
2.-
IndicePrimero: Número
3.-
IndiceUltimo: Número
4.-
Elemento: Número
5.-
IndicePrimero = 1
6.-
IndiceUltimo = 25
7.-
Repetir
8.-
        Elemento = Tabla[IndicePrimero]
9.-
        Tabla[IndicePrimero] = Tabla[IndiceUltimo]
10.-
      Tabla[IndiceUltimo] = Elemento
11.-
      IndicePrimero = IndicePrimero + 1
12.-
      IndiceUltimo = IndiceUltimo - 1
13.-
Hasta que IndicePrimero = IndiceUltimo

1.- Definimos una tabla llamada Tabla con 25 posiciones de tipo Número.

2.- Definimos una variable llamada IndicePrimero que nos servirá para movernos por la tabla desde la primera posición en adelante.

3.- Definimos una variable llamada IndiceUltimo que nos servirá para movernos por la tabla desde la última posición hacia atrás.

4.- Definimos una variable llamada Elemento para utilizarla de puente en el momento de mover el contenido de una posición a otra. Esta variable es necesaria ya que si hacemos el cambio desde, por ejemplo, la primera a la última posición perderíamos el valor que teníamos en la primera posición.

5 y 6.- Inicializamos las variables IndicePrimero a 1 y IndiceUltimo a 25 ya que queremos partir, respectivamente, desde la primera y la última posición.

7.- Entramos dentro del bucle.

8.- Hacemos que la variable Elemento tome el valor del contenido de la tabla que nos indique IndicePrimero.

9.- Hacemos que la posición que nos indica IndicePrimero tome como valor el valor que tiene la posición que nos indica IndiceUltimo.

10.- Ahora la posición que nos indica IndiceUltimo toma como valor el contenido de la variable Elemento.

11.- Aumentamos IndicePrimero en 1 para adelantar en la tabla.

12.- Disminuimos IndiceUltimo en 1 para retroceder en la tabla.

13.- Repetiremos el bucle hasta que los dos índices se encuentren. Éste será el punto en el que no se tendrán que mover más elementos ya que, nos encontramos justo en la mitad de la tabla.

Hay que tener en cuenta que esta solución es válida en el caso que la cantidad de posiciones en la tabla sean impares. Para una cantidad par tendríamos que buscar otra solución. No estaría plantearse esto como un nuevo ejercicio.

Cuando salimos del bucle la ordenación de la tabla ha concluido.

Mírese el código tantas veces como sea necesario, si no entiende algún punto no dude en preguntarlo.

Capítulo siguiente - Las matrices
Recibe nuestras novedades
Al presionar "Recibir" estás dándote de alta y aceptas las condiciones legales de mailxmail

Hay 437 opiniones. Opina sobre este curso.


Cursos similares a Metodología de la Programación


Cursos Valoración Alumnos Vídeo
Bases de Datos en C#
El curso incluye el código necesario para acceder a las bases de datos y realizar consultas de selección y de acción.... [05/04/07]
 3,33/5 4.826  
Manual de estilo de páginas Web
En este curso se quiere dar una guía muy amplia para todos aquellos que están interesados en crear una página Web. Dando explicaciones de como crear un buen diseño tanto ... [05/05/05]
5/5 14.413  
HTML para principiantes
HTML para principiantes, aprende a hacer tus propias páginas web. Programar en un lenguaje como es HTML puede ser fácil y sencillo. Este curso está di... [15/09/09]
 4,83/5 2.346  


Publicar en   del.icio.us    digg    meneame

¿Qué es mailxmail.com?|ISSN: 1699-4914|Recomiéndanos|Ayuda
Condiciones legales de mailxmail