Resumen: mostrar cómo generar cadena aleatoria en C, de cualquier longitud, usando srand.

Vamos a ver cómo obtener un carácter aleatorio de una muestra y agregarlo a la cadena de destino usando ANSI C.

Generar cadena aleatoria en C

El algoritmo es sencillo. Debemos definir nuestra muestra, es decir, de donde tomaremos los caracteres:

Ahora debemos hacer un ciclo desde 0 hasta la longitud de la cadena de destino. En cada paso del ciclo:

  1. Generamos un índice aleatorio que esté en los límites de la muestra
  2. A la cadena de destino le asignamos el carácter que esté en la muestra, usando el índice aleatorio.

Como sabemos, las cadenas en C son un poco complejas así que lo haremos en forma de función en donde quien invoca a la función indica el destino y la longitud.

Función en C

El código queda así:

Como ves, recibimos la longitud y la cadena de destino, así evitamos cometer errores de cadenas, pues el que invoca a la función debe definirla.

Por cierto, el índice aleatorio es generado en la línea 4 con rand.

Código completo para generar cadena aleatoria en C

Generar cadena aleatoria en C

Generar cadena aleatoria en C

El código queda así:

No olvides que se debe alimentar a srand, lo que hacemos en la línea 27. Después definimos la cadena de destino cuya longitud debe estar definida en tiempo de ejecución y debe ser constante, para ello usamos #define.

Finalmente en la línea 29 invocamos a cadena_aleatoria en donde indicamos la longitud así como el destino, y como no regresa nada (pues modifica internamente a la cadena) no esperamos el resultado, ya que simplemente basta con imprimir destino.

Si quieres puedes ejecutar el código en línea.

También puedes explorar más ejercicios sobre C.

Nota importante: este método no sirve para generar contraseñas, no lo uses para cosas de seguridad, ya que no es criptográficamente seguro.


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 1,131 suscriptores


parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

0 Comentarios

Deja un comentario

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

A %d blogueros les gusta esto: