Boa tarde, Não entendi nada sobre as funções rand e srand. Acho que eu preciso de exemplos mais simples sem misturar outras funções para que eu entenda detalhadamente.
Agradeço o retorno desde já.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa tarde, Não entendi nada sobre as funções rand e srand. Acho que eu preciso de exemplos mais simples sem misturar outras funções para que eu entenda detalhadamente.
Agradeço o retorno desde já.
Oi Maria, bom dia!
Entender as funções rand e srand pode parecer um pouco complicado no início, mas vou tentar explicar de uma forma mais simples com exemplos práticos.
Função rand():
rand() é usada para gerar números aleatórios. No entanto, esses números não são verdadeiramente aleatórios; eles são chamados de números pseudo-aleatórios porque são gerados por um algoritmo.rand(), ele retorna um número inteiro que pode ser qualquer valor entre 0 e RAND_MAX (uma constante definida na biblioteca padrão do C).Exemplo básico:
#include <stdio.h>
#include <stdlib.h>
int main() {
int numero = rand();
printf("Número aleatório: %d\n", numero);
return 0;
}
Função srand():
srand() é usada para inicializar a semente do gerador de números aleatórios. A "semente" é um valor inicial que o algoritmo usa para começar a gerar números.srand(), o rand() vai gerar a mesma sequência de números toda vez que você executar o programa. Para obter números diferentes a cada execução, você precisa definir uma semente diferente.Exemplo usando srand():
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand(time(0)); // Usa o tempo atual como semente
int numero = rand();
printf("Número aleatório: %d\n", numero);
return 0;
}
No exemplo acima, time(0) retorna o número de segundos desde 1 de janeiro de 1970, garantindo que a semente seja diferente a cada execução do programa.
Espero que esses exemplos tenham ajudado a esclarecer suas dúvidas.
Bons estudos!