Na biblioteca stdilb.h que é uma das bibliotecas padrão do C, encontramos a função
rand(); para aplicações onde um valor randômico é exigido, e isto é um procedimento
muito normal em programação.
Esta função geralmente trabalha com valores pré-definidos limitados por uma constante
que se encontra também na mesma biblioteca.
Más o que ocorreu, foi que os valores declarados nas matrizes de string sempre se repetiam,
eram sempre iguais.Notei então depois de algumas pesquisa que a função rand(); assume um valor
real, forçando sempre a mesma sequência serem apresentadas.
Com muita paciência recorri a função srand(); que trabalha dando um ponta-pé na função rand();
injetando um determinado valor diferente a cada execução do programa.
Este valor foi obtido usando o comando time da biblioteca time.h.
Para usar a função srand(); a seguinte declaração se fez necessária: srand ( time ( NULL ) );
Este programa forma nomes com sobrenomes, em um giro automático comandado por um do while,
com os tempos determinados pela função Sleep();
Quando o nome "Sandro" é encontrado, a função strcmp(); barra a execução e imprime a mensagem
"fim do programa!!".
Neste código passei os valores das matrizes de string como parâmetros na função
Nome_sobrenome ( char *No_me, char *Sobre_Nomes ); e esta por sua vez retorna os endereços
para a função main();
Pergunta
roccoC/C++
Na biblioteca stdilb.h que é uma das bibliotecas padrão do C, encontramos a função
Editado por roccoC/C++rand(); para aplicações onde um valor randômico é exigido, e isto é um procedimento
muito normal em programação.
Esta função geralmente trabalha com valores pré-definidos limitados por uma constante
que se encontra também na mesma biblioteca.
Más o que ocorreu, foi que os valores declarados nas matrizes de string sempre se repetiam,
eram sempre iguais.Notei então depois de algumas pesquisa que a função rand(); assume um valor
real, forçando sempre a mesma sequência serem apresentadas.
Com muita paciência recorri a função srand(); que trabalha dando um ponta-pé na função rand();
injetando um determinado valor diferente a cada execução do programa.
Este valor foi obtido usando o comando time da biblioteca time.h.
Para usar a função srand(); a seguinte declaração se fez necessária: srand ( time ( NULL ) );
Este programa forma nomes com sobrenomes, em um giro automático comandado por um do while,
com os tempos determinados pela função Sleep();
Quando o nome "Sandro" é encontrado, a função strcmp(); barra a execução e imprime a mensagem
"fim do programa!!".
Neste código passei os valores das matrizes de string como parâmetros na função
Nome_sobrenome ( char *No_me, char *Sobre_Nomes ); e esta por sua vez retorna os endereços
para a função main();
Veja abaixo imagens do programa em execução:
http://2.bp.blogspot.com/-dD9vMic1uEw/VNOZBX7SElI/AAAAAAAAB-I/M9qG8tPuxIA/s1600/aaa.PNG
http://3.bp.blogspot.com/-AGPMUJSCU74/VNOZCG_OPaI/AAAAAAAAB-Q/GRXt9CZr7x8/s1600/sran.PNG
http://1.bp.blogspot.com/-JSzstVWA5sg/VNOZCHsEVTI/AAAAAAAAB-U/tlMGhSRq3Gg/s1600/srand.PNG
http://2.bp.blogspot.com/-nVBnV81V7DE/VNOZCgssNHI/AAAAAAAAB-c/0RQj7M9H8H8/s1600/srn.PNG
http://4.bp.blogspot.com/-bhwBvkaT8KU/VNOZDFDuWQI/AAAAAAAAB-k/lK9WtrZtW6A/s1600/srnd.PNG
Veja abaixo o link do código do programa:
http://codigosfontes-ccplus-plus.blogspot.com.br/2015/02/funcao-rand-e-srand.html
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.