elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Como utilizar dos veces la funcionn srand(time(NULL))
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como utilizar dos veces la funcionn srand(time(NULL))  (Leído 7,287 veces)
BJM

Desconectado Desconectado

Mensajes: 41


Ver Perfil
Como utilizar dos veces la funcionn srand(time(NULL))
« en: 17 Enero 2013, 19:48 pm »

Debo generar primeramente dos valores aleatorios entre 0 y 1, si se genero 0 luego se debe generar otro numero aleatorio entre 0-9, si por el contrario se genero fue 1 luego se debe generar un numero aleatorio entre 0-5, pero siempre se generan los mismos numeros, a continuacion el codigo:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include<time.h>
  4.  
  5. main(){
  6.       int a,b,i;
  7.       for(i=1;i<=12;i++){
  8.       srand(time(NULL));
  9.       a=rand()%2;
  10.       printf("\n\n Valor aleatorio (0-1): %d",a);
  11.       if(a==0){
  12.       srand(time(NULL));
  13.       b=rand()%10;
  14.       printf("\n\n Valor aleatorio (0-9): %d",b);
  15.       }
  16.       else{
  17.           srand(time(NULL));
  18.           b=rand()%6;
  19.           printf("\n\n Valor aleatorio (0-5): %d",b);
  20.           }
  21.             }
  22.       printf("\n");
  23.       system("pause");
  24.       }


En línea

durasno


Desconectado Desconectado

Mensajes: 373


Ver Perfil
Re: Como utilizar dos veces la funcionn srand(time(NULL))
« Respuesta #1 en: 17 Enero 2013, 20:35 pm »

La funcion srand solo tenes que usarla una vez y, para evitar confuciones, al principio del programa.. AL llamar tantas veces a srand estas reiniciando la semilla, lo cual provoca que se repitan los numeros


Saludos


En línea

Ahorrate una pregunta, lee el man
apuromafo CLS


Desconectado Desconectado

Mensajes: 1.441



Ver Perfil WWW
Re: Como utilizar dos veces la funcionn srand(time(NULL))
« Respuesta #2 en: 19 Enero 2013, 07:04 am »

interesante lo que tienes que hacer para hacer en base 2, base 10, base 6

yo alguna vez tuve que hacer llamadas con srand

si te sirve el ejemplo lo tengo aca:
http://foro.elhacker.net/ingenieria_inversa/reto_crackme_6_de_flamer-t368430.15.html

saludos Apuromafo

pd:use arrays, asi lograba evitarme las confusiones de los valores posibles ^^
En línea

Apuromafo
Puntoinfinito


Desconectado Desconectado

Mensajes: 919


#! /win/archlinux


Ver Perfil WWW
Re: Como utilizar dos veces la funcionn srand(time(NULL))
« Respuesta #3 en: 19 Enero 2013, 11:58 am »

Debes poner el srand(time(NULL)); tan solo una vez. Ponlo al principio del main o antes de comenzar...
En línea

AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Problema con srand()?
Programación C/C++
Marovingio 3 3,549 Último mensaje 15 Septiembre 2010, 05:51 am
por Littlehorse
Como dejar NULL una opción de un Call?
Ingeniería Inversa
.:UND3R:. 4 2,759 Último mensaje 8 Julio 2011, 19:55 pm
por .:UND3R:.
programas con srand y rand
Programación C/C++
lokita_sarah 1 2,284 Último mensaje 1 Diciembre 2011, 04:28 am
por ralymontes
Utilizar una tecla 2 veces
.NET (C#, VB.NET, ASP)
BrokerJoker 4 2,914 Último mensaje 23 Enero 2012, 23:14 pm
por BrokerJoker
Srand para que den dos numeros diferentes? « 1 2 »
Programación C/C++
Anastacio 12 9,272 Último mensaje 19 Febrero 2012, 22:16 pm
por Anastacio
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines