Created
February 7, 2014 19:48
-
-
Save marcoscastro/8870374 to your computer and use it in GitHub Desktop.
Exemplo que gera números aleatórios dados os limites superior e inferior.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Exemplo de geração de números aleatórios | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <time.h> | |
/* | |
A função gerar_numero() retorna um número aleatório | |
que pertence ao intervalo [lim_inf, lim_sup] | |
Os dois parâmetros da função são lim_inf que representa | |
o limite inferior do intervalo e lim_sup que representa | |
o limite superior. | |
*/ | |
int gerar_numero(int lim_inf, int lim_sup) | |
{ | |
// a função rand() gera um inteiro aleatório | |
return (lim_inf + (rand() % lim_sup)); | |
} | |
int main(int argc, char *argv[]) | |
{ | |
/* | |
Para que a cada execução do programa novos números | |
sejam gerados, então utilizamos o valor retornado pela | |
função time. Isso permite que a sequência seja diferente. | |
Passamos NULL para a função time porque não é necessário | |
armazenar o valor de retorno da função. | |
A função srand() recebe um argumento sem sinal (unsigned). | |
Isso serve para termos uma sequência diferente a cada execução, | |
ou seja, garante de fato a aleatoriedade. Para que o usuário não | |
precise fornecer a semente da sequência, então passamos uma função | |
que retorna o valor do relógio que é a função time(). | |
*/ | |
srand(time(NULL)); | |
// mostrando 5 números gerados aleatoriamente no intervalo [1, 10] | |
printf("Numero gerado: %d\n", gerar_numero(1, 10)); | |
printf("Numero gerado: %d\n", gerar_numero(1, 10)); | |
printf("Numero gerado: %d\n", gerar_numero(1, 10)); | |
printf("Numero gerado: %d\n", gerar_numero(1, 10)); | |
printf("Numero gerado: %d\n", gerar_numero(1, 10)); | |
printf("Numero gerado: %d\n", gerar_numero(1, 10)); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment