Elemento aleatorio de arreglo en C

Publicado por parzibyte en

Siguiendo con los tutoriales de números aleatorios en C hoy vamos a ver cómo elegir un elemento aleatorio de un arreglo en C.

Recuerda que ya hablamos sobre los arreglos en C y sobre los arreglos de cadenas en C.

Veremos cómo calcular un índice aleatorio para escoger un elemento aleatorio de un arreglo, usando las funciones que vimos al generar números aleatorios en C.

Elegir elemento aleatorio de arreglo

Para ello primero hay que saber la longitud del arreglo. Podemos definirla nosotros mismos o calcularla en tiempo de ejecución. Una vez que la tengamos, necesitamos la función que da un número aleatorio en un rango.

A partir de eso, obtenemos un número aleatorio entre 0 y la longitud del arreglo menos 1; y elegimos el elemento que esté en ese índice:

Como vemos, el algoritmo es sencillo. Simplemente hay que obtener un número aleatorio dentro del rango de la longitud del arreglo y usarlo como índice.

Igualmente podríamos almacenar el índice aleatorio en una variable, pero aquí estamos accediendo directamente.

Probar ejemplo

Míralo en este enlace.

Te invito a ver más sobre C aquí.


parzibyte

He trabajado por más de 4 años en el desarrollo de software con experiencia en Java, PHP, JavaScript, HTML, Node.JS, Python, Android y Go. También he trabajado con bases de datos SQL como MySQL y SQLite, así como con bases de datos NoSQL usando MongoDB.Soy bueno utilizando algunos frameworks y herramientas como Firebase, jQuery, AngularJS, VueJS, CodeIgniter, Laravel, BulmaCSS, Bootstrap y Electron.Otros términos que conozco son: Arduino, GraphQL, API's, REST, AJAX, PouchDB, CouchDB, Experiencia de usuario, buenas prácticas de programación, Webpack, NPM, Administración de servidores y programación de scriptsLa plataforma en la que tengo más experiencia es la web, pero en mis ratos libres realizo unos pequeños ejercicios en C# y C.Estoy aquí para ayudarte a resolver tus problemas de programación y depuración :-)

0 Comments

Deja un comentario

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

A %d blogueros les gusta esto: