Na verdade não são aleatórios, são pseudo-aleatórias, isto é, usam uma fórmula. Nos anos 80 a gente tinha que escrever na unha esta função. veja: int rand (void) { holdrand = (holdrand * 214013L + 2531011L); return (holdrand >> 16) & 0x7fff; } void srand ( unsigned int seed ) { holdrand = (unsigned long)seed; } A "srand" gera a semente... s de seed!
Será que há alguma forma mais simplificada de fazer? , estou fazendo um projeto com listas encadeadas e preciso gerar valores para o ID dos pacientes E não quero que o código fique com muitas linhas
Utilizei seu algoritmo para um programinha que estava com vontade de desenvolver, fiquei com a sensação de que nunca conseguiria rs, devo ficar desesperado,?? sou nível junior em C++
Consegui fazer com apenas uma função: void GeraAleatorios(int numeros[], int quantNumeros, int limite){ srand(time(NULL)); int i, v, j; bool Existe; for(i=0; i
Os toca pen drive automotivos, possuem uma função Random, DE MENTIRINHA:Mesmo que o pen drive tenha umas 200 músicas gravadas, o sistema começa a reprodução em modo aleatório e depois de 5 a 8 músicas, REPETE uma delas.O que poderia ser feito, para obter uma Função Random, que REALMENTE funcione, nesses aparelhos?
Obg prof Gilberto! vou testar esse método em C, e já compartilhei com os colegas de Faculdade. grato pela consideração! :)
Salvou minha vida. Conteúdo e explicação excelentes, parabéns.
Ainda não entendo programação mas gostaria de saber como que o computador gera um número aleatório como que ele faz essa escolha?
Na verdade não são aleatórios, são pseudo-aleatórias, isto é, usam uma fórmula. Nos anos 80 a gente tinha que escrever na unha esta função. veja:
int rand (void)
{
holdrand = (holdrand * 214013L + 2531011L);
return (holdrand >> 16) & 0x7fff;
}
void srand (
unsigned int seed
)
{
holdrand = (unsigned long)seed;
}
A "srand" gera a semente... s de seed!
Parabéns! Muito legal, ajudou muito :)
Para matriz e possível gerar os números aleatorios ?
Será que há alguma forma mais simplificada de fazer? , estou fazendo um projeto com listas encadeadas e preciso gerar valores para o ID dos pacientes
E não quero que o código fique com muitas linhas
boa aula ! muito bem explicado.
muito obrigado por compartilhar o conhecimento!!
Muito avançado.
Como colocar so um unico numero para aparecer
BOA NOITE, gostatia de saber como visualizar quantidades elevadas de numeros, pois quando vou visualizar 10.000 em ordem só sai a metade no vídeo.
Salva em um arquivo .txt
Teria como vc fazer com Matriz
Utilizei seu algoritmo para um programinha que estava com vontade de desenvolver, fiquei com a sensação de que nunca conseguiria rs, devo ficar desesperado,?? sou nível junior em C++
vi e revi esse video e ainda assim parece como se eu nao tivesse visto nada,nao consigo aplicar nada
Amigo pode me auxiliar tenho 40 numeros e desejo fazer 100 apostas de 6 numerosde números mega sena como distribuir mente?
O meu código só roda até 39 mil
É possível resolver o mesmo problema em um única função? Já tentei aqui de várias formas, mas os valores continuam repetindo.
Sim !
Conseguiu? Também tava querendo saber como faz com uma única função
Consegui fazer com apenas uma função:
void GeraAleatorios(int numeros[], int quantNumeros, int limite){
srand(time(NULL));
int i, v, j;
bool Existe;
for(i=0; i
Não consigo fazer no ubuntu
Ajudou muito, Obrigado !!
estou criando uma sequencia de numeros aleatorios, porem como nao incluir o zero?
onde tem :
numeros[i] = rand() % Limite;
substitua por:
numeros[i] = 1 + rand() % (Limite - 1);
Muito bom!
Bem feito, mas infelizmente o custo computacional será linear, estou a procura de algoritmo mais eficiente
É linguagem C ou C++?
nao funciona
Os toca pen drive automotivos, possuem uma função Random, DE MENTIRINHA:Mesmo que o pen drive tenha umas 200 músicas gravadas, o sistema começa a reprodução em modo aleatório e depois de 5 a 8 músicas, REPETE uma delas.O que poderia ser feito, para obter uma Função Random, que REALMENTE funcione, nesses aparelhos?
Atribuir para cada música um número random que não se repita, se repetir mete outro número, daí só tocar de acordo com a ordem numérica.
ou invés de ter colocado o do while poderia colocar
if(!Existe(numeros, i, v)){
numeros[i] = v;
}else{
i---;
}