Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1260 1...125312541255125612571258125912601261126212631264126512661267...1503 Nuevo comentario Igor Makanu 2020.11.09 12:16 #12591 Vitaly Muzichenko:¿Puedes decirme qué escribir para obtener números aleatorios de 6 dígitos? void OnStart() { srand(GetTickCount()); for(int i = 0; i < 10; i++) { uint random = rand_32() % 1000000; // %1000000 --> ограничим 6-ю знаками printf("random = %u", random); } } //+------------------------------------------------------------------+ uint rand_32() { return(((uint)rand()) << 16 | rand()); } //+------------------------------------------------------------------+ Vitaly Muzichenko 2020.11.09 13:37 #12592 Alexey Viktorov:¿Y cuál fue el resultado? No pretendo la infalibilidad...)) Como resultado tuve que dejarlo ya que había menos de 6 caracteres if(v>=min && v<=max) Igor Makanu: Lo probaré esta noche. Vitaly Muzichenko 2020.11.09 16:03 #12593 Igor Makanu: Los de 5 dígitos se cuelan En fin, problema resuelto, ¡gracias a todos! Igor Makanu 2020.11.09 17:22 #12594 Vitaly Muzichenko:Las cifras de 5 dígitos se cuelan Sí, lo harán. pensaba que sólo era un reto de 6 dígitos. como opción para generar el primer dígito con rand()%10 Vitaly Muzichenko 2020.11.09 17:30 #12595 Igor Makanu:Sí, lo harán. pensó que la tarea no tiene más de 6 dígitos como opción para generar el primer carácter con rand()%10 Vuelve a ponerlo en el código. if(v>=min && v<=max) essuficiente, la función se llama un par de veces al día de todos modos Igor Makanu 2020.11.09 17:35 #12596 Vitaly Muzichenko:Vuelve a ponerlo en el código. essuficiente, la función se llama un par de veces al día de todos modos. no forma más sencilla escríbalo así uint random = (rand() % 9 + 1) * 1000000 + // первый знак rand_32() % 100000; // ограничим 5-ю знаками Valeriy Yastremskiy 2020.11.09 18:11 #12597 Igor Makanu:no Es más sencillo que eso. así que escríbelo. Bueno, podrías marcar al azar cada signo (seis piezas) y recoger el número) Igor Makanu 2020.11.09 18:14 #12598 Valeriy Yastremskiy:Bueno, se podría aleatorizar cada personaje (seis piezas) y recoger el número) Sí, pero probablemente sería un mal rand - usted necesita para probar Creo que es más fácil desplazar 16 bits de rand() y añadir más rand() a los bits bajos = obtener 32 bits - mi ejemplo rand_32() Errores, fallos, preguntas Preguntas sobre POO en La gran y terrible Valeriy Yastremskiy 2020.11.09 18:21 #12599 Igor Makanu:Sí, pero probablemente sería un rango malo - Tengo que probar Creo que es más fácil desplazar un rand() de 16 bits y añadir otro rand() a los bits bajos = obtener un rand_32() de 32 bits - mi ejemplo Estoy de acuerdo. O se prueba o se ajusta la lógica del generador, lo que suele ser más caro que la tarea. Алексей Тарабанов 2020.11.09 21:16 #12600 Valeriy Yastremskiy:Estoy de acuerdo. O bien se hacen pruebas o se manipula la lógica del generador, lo que suele ser más caro que la tarea que se está llevando a cabo. ) 1...125312541255125612571258125912601261126212631264126512661267...1503 Nuevo comentario
¿Puedes decirme qué escribir para obtener números aleatorios de 6 dígitos?
¿Y cuál fue el resultado? No pretendo la infalibilidad...))
Como resultado tuve que dejarlo ya que había menos de 6 caracteres
if(v>=min && v<=max)Lo probaré esta noche.
Los de 5 dígitos se cuelan
En fin, problema resuelto, ¡gracias a todos!
Las cifras de 5 dígitos se cuelan
Sí, lo harán.
pensaba que sólo era un reto de 6 dígitos.
como opción para generar el primer dígito con rand()%10
Sí, lo harán.
pensó que la tarea no tiene más de 6 dígitos
como opción para generar el primer carácter con rand()%10
Vuelve a ponerlo en el código.
if(v>=min && v<=max)essuficiente, la función se llama un par de veces al día de todos modos
Vuelve a ponerlo en el código.
essuficiente, la función se llama un par de veces al día de todos modos.
no
forma más sencilla
escríbalo así
no
Es más sencillo que eso.
así que escríbelo.
Bueno, podrías marcar al azar cada signo (seis piezas) y recoger el número)
Bueno, se podría aleatorizar cada personaje (seis piezas) y recoger el número)
Sí, pero probablemente sería un mal rand - usted necesita para probar
Creo que es más fácil desplazar 16 bits de rand() y añadir más rand() a los bits bajos = obtener 32 bits - mi ejemplo rand_32()
Sí, pero probablemente sería un rango malo - Tengo que probar
Creo que es más fácil desplazar un rand() de 16 bits y añadir otro rand() a los bits bajos = obtener un rand_32() de 32 bits - mi ejemplo
Estoy de acuerdo. O se prueba o se ajusta la lógica del generador, lo que suele ser más caro que la tarea.
Estoy de acuerdo. O bien se hacen pruebas o se manipula la lógica del generador, lo que suele ser más caro que la tarea que se está llevando a cabo.
)