Una buena forma de poner nombre a nuestros recursos con más o menos certeza de que ese nombre es único, es utilizar UUID‘s. Es cierto, que si en máquinas diferentes se generan UUIDs al mismo tiempo, puede ser que haya cierta coincidencia en los valores generados (si nos ponemos cabezones, y si en algún sitio deben convivir varios UUIDs, podemos comprobar que no estén repetidos. Incluso, dependiendo del algoritmo utilizado para generarlos, puede que en la misma máquina haya valores repetidos.… Leer artículo completo
2 Maneras de generar identificadores universalmente únicos (UUID) en C
Algoritmos: generar números aleatorios para la lotería
Es un ejemplo típico y nos muestra el uso de rand() con arrays para generar varios números aleatorios y no repetidos.
… Leer artículo completo1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71/**
*************************************************************
* @file loteria.c
* @brief Saca números aleatorios para la lotería
* Basado en el sorteo de la primitiva, hay que sacar 7 números
* del 1 al 49, sin repetir
*
* @author Gaspar Fernández <blakeyed@totaki.com>
* https://poesiabinaria.net/algoritmos/
*************************************************************/
#include <stdlib.h>
#include <stdio.h>
#include <time.h> /* para time() */
int numero_aleatorio(int desde, int hasta)
{
return desde+rand()%(hasta-desde+1);
}
short numero_repetido(int numeros[7], int n)
{
int i=0;
while (i<n)
{
/* Si un número sacado anteriormente es igual al número
en la posición n, decidido, está repetido.
Últimos comentarios