Fundamentos de Fortran: Uso de Implicit None y Algoritmos de Ordenación

Clasificado en Matemáticas

Escrito el en español con un tamaño de 2,59 KB

Utilidad e importancia de la sentencia IMPLICIT NONE

Fortran 90 toma las variables que empiezan por I, J, K, L, M como Integer, y el resto como Real, siempre y cuando no se declaren. Puesto que es recomendable evitar el uso de la declaración implícita, indicaremos al compilador que no haga uso de ella; esto se hace poniendo IMPLICIT NONE justo después de la instrucción PROGRAM. Por ello, es importante declarar las variables, obligándonos a hacerlo con dicha sentencia, ya que una confusión en el uso de distintos caracteres podría dar lugar a resultados equivocados.

Formas de ordenación de vectores

La ordenación de matrices unidimensionales (vectores) es una operación que se usa con mucha frecuencia. Tres de los métodos más simples son: selección, inserción y burbuja.

En todos ellos vamos a suponer que tenemos una matriz unidimensional de N elementos.

Selección

La idea del método es:

  1. Dado un vector, buscar el menor elemento que contiene.
  2. Una vez encontrado, lo intercambiamos con el elemento de la primera posición.
  3. Repetimos el proceso sobre el resto del vector (sin tener en cuenta la primera posición, que ya ha sido ordenada).
  4. Repetiremos el método hasta que nos quede un único elemento por ordenar. Este último elemento estará en la última posición y será el mayor de todos.

Inserción

La idea de este método, también llamado método de la baraja, es:

  1. Dado un vector de n elementos, suponemos que ya están ordenados los I-1 elementos.
  2. Tomamos el elemento I-ésimo y le hacemos hueco entre los I primeros elementos en la posición donde debe ir para que sigan ordenados. Este hueco lo hacemos desplazando hacia la derecha, una posición, los elementos que sean mayores que él.
  3. Repetimos el proceso suponiendo que ya están ordenados los I primeros elementos.
  4. Inicialmente I vale 2 y acabamos el proceso cuando I valga n.

Método de la burbuja

La idea del método es:

  1. Comparamos cada elemento con su vecino, el que está a su derecha, y si no están ordenados, se intercambian. Esto se realiza desde el primer elemento hasta el último.
  2. Al finalizar el paso 1, tendremos el mayor elemento de todos al final del vector, con lo que ya se puede dar por ordenado.
  3. Repetimos el proceso, pero sin tener en cuenta este último elemento.

Entradas relacionadas: