Se tiene el vector A con 100 elementos almacenados. Diseñe un algoritmo que escriba “SI” si el vector esta ordenado ascendentemente o “NO” si el vector no está ordenado.
Haz clic aquí para suscribirte a mi canal
Como están amigos en esta ocasión les comparto un algoritmo que determina si un vector esta ordenado de manera ascendente o no lo está.
Si les parece vamos a explicar el funcionamiento de este algoritmo, entonces lo primero que haremos será ponerle un nombre en mi caso le puse:
Algoritmo detarea
Con la palabra reservada Definir declaramos las siguientes variables.
Definir x, a, b, vector Como Entero
Inicializamos la variable b con el número cero.
La variable b, es una variable centinela que empezará valiendo cero.
b = 0
Colocamos el tamaño del vector, en este ejemplo de tamaño 100.
dimension vector[100]
Utilizamos un ciclo que se repetirá 100 veces.
para x = 1 hasta 100 Con Paso 1 Hacer
En cada bucle ingresamos un numero en el vector.
leer vector(x)
FinPara
Utilizamos otro ciclo “Para” este ciclo también se repetirá 100 veces.
para x = 1 Hasta 100 Con Paso 1 Hacer
En el cuerpo de este ciclo evaluamos si la variable x es igual a 1.
si x == 1 Entonces
Si la condición se cumple, quiere decir que estamos analizando el primer elemento del vector.
Entonces copiamos ese número y lo almacenamos en la variable a.
a = vector(x)
Este número me servirá de referencia, para compararlo con los otros números del vector.
SiNo
Cuando la condición no se cumpla, es decir cuando x no sea igual a 1, entonces quiere decir que se está analizando el segundo número o cualquier otro, pero no el primero.
Entones evaluamos si el numero almacenado en la variable “a” es mayor al número almacenado en el vector en la posición x.
si a > vector(x)Entonces
Cuando esta condición se cumpla quiere decir que el vector no está ordenado de forma ascendente, ya que de lo contrario el número almacenado en “a” nunca seria mayor.
En la variable b asigno el número 1, es una marca que estoy colocando para indicar que el vector no está ordenado.
b = 1
SiNo
Si la condición no se cumple, entonces en la variable a, almacenamos el número del vector en la posición x.
a = vector(x)
FinSi
FinSi
FinPara
Fuera del ciclo “PARA” evaluamos si b es igual a 1.
si b == 1 Entonces
Si esta condición se cumple, quiere decir que el vector no esta ordenado de forma ascendente.
Escribir «No»
SiNo
Cuando la condición no se cumpla quiere decir que la variable b es igual a cero, por lo tanto el vector si esta ordenado.
Escribir «Si»
FinSi
FinAlgoritmo
Para probar este algoritmo modificamos el código para trabajar con un vector de 5 elementos.
Bien amigos esta es la solución de este algoritmo, espero les guste y más que nada que les pueda ser de utilidad, les comparto el código, un saludo y nos vemos en la próxima entrega.