Llenar un vector con números aleatorios sin repetir

En esta entrega les comparto un algoritmo para llenar un vector con números aleatorios sin repetir en pseint.

Bien como ya es costumbre en este Blog, vamos a explicar el funcionamiento de este algoritmo, entonces lo primero que hacemos es ponerle un nombre, en mi caso le puse:

Algoritmo detarea

Declaramos las variables.

       Definir a,b,c,n,vector Como Entero

Pedimos que se ingrese el tamaño del arreglo.

       Escribir «Ingresa el tamaño del Vector»

Este número lo ingresamos en la variable “n”.

       Leer n

Colocamos el tamaño del vector, este vector será de tamaño n, es decir el usuario es quien elige el tamaño.

       Dimension vector[n]

Utilizamos un ciclo que se repetirá n veces.

       para a = 1 Hasta n Con Paso 1 Hacer

En cada ciclo inicializo la variable “c” con el número cero.

                 c = 0

Generamos un número al azar entre 1 y “n” multiplicado por 2, ya con esto tenemos un margen suficiente para generar los números sin repetir.

                 x = azar(n*2) + 1

A la función azar le sumaos 1, para descartar el numero cero.

Utilizamos otro ciclo para, este ciclo también se repite n veces.

             para b = 1 Hasta n Con Paso 1 Hacer

Y me sirve para evaluar si el número generado al azar ya se encuentra en el vector.

                    si x == vector(b) Entonces

Si la codician se cumple, como ya mencionaba quiere decir que el número ya se encuentra en el vector, entonces le asignamos el numero 1 a la variable «c».

                          c = 1

                    FinSi

             FinPara

Evaluamos si la variable «c» es igual a 1.

             si c ==1 Entonces

Cuando la variable «c» sea igual a 1, quiere decir que se generó un número repetido.

Entonces decrementamos la variable “a” en 1, esto lo hacemos para que el ciclo no se mueva y podamos ingresar otro número.

                       a = a – 1

             SiNo

Cuando la condición no se cumpla, entonces quiere decir que se ha generado un número que no está repetido por lo tanto lo guardamos en el vector.

                    vector(a) = x

             FinSi

       FinPara

Finalmente utilizamos otro ciclo para mostrar los elementos del vector.

       para a = 1 Hasta n Con Paso 1 Hacer

             Escribir vector(a)

       FinPara

FinAlgoritmo

Aquí puedes ver el funcionamiento de este algoritmo.

Llenar un vector con números aleatorios sin repetir
Llenar un vector con números aleatorios sin repetir
Descargar Programa

Esta es la solución de este algoritmo, les comparto el código fuente espero les guste y más que nada que les pueda ser de utilidad, un saludo y nos vemos en la próxima entrega.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *