Autor Tema: Generar números o secuencias aleatorios en C. (CU00525F)  (Leído 3633 veces)

Daniloboy

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 15
    • Ver Perfil
Hola, tengo una duda práctica, en el ejercicio me indican que el numero aleatorio tenga de rango 1 a 225 en ambas "x" pero no se como aislar el cero para que no lo cuente como un valor que se pueda incluir aleatoriamente. Vi que por ejemplo para tener un rango entre 20 y 30 usaba el operador suma rand()%11+20 pero y ¿para hacerlo entre 1 y 225?
Yo lo puse así pero no consigo averiguar como aislar el cero
Código: [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
srand(time(NULL));
int pacientes= rand()%226;
printf("El numero de pacientes en la cola es %d\n", pacientes);
printf("Transcurridos 10 minutos el numero de pacientes en la cola es %d\n", rand()%226);
  return 0;
}

Daniloboy

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 15
    • Ver Perfil
Re:Generar números o secuencias aleatorios en C. (CU00525F)
« Respuesta #1 en: 25 de Abril 2016, 21:06 »
Vale perdón, ya lo descubrí (era sumándole uno al rango rand()%225+1) y al volver a leerlo entendí lo de la semilla prefijada y la hora del ordenador para generar esa secuencia.
Borren mi post cuando lo vean, gracias.

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Generar números o secuencias aleatorios en C. (CU00525F)
« Respuesta #2 en: 27 de Abril 2016, 09:28 »
Hola Danilo, ¿puedes poner tu código con la solución al ejercicio? Le puede resultar útil a otras personas que tengan la misma duda.

Saludos!
Responsable de departamento de producción aprenderaprogramar.com

Daniloboy

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 15
    • Ver Perfil
Re:Generar números o secuencias aleatorios en C. (CU00525F)
« Respuesta #3 en: 27 de Abril 2016, 09:54 »
Si claro, lo que yo creo es que se puede hacer mejor porque para generar dos secuencias aleatorias distintas he tenido que definir la segunda simplemente como rand()%225+1) a secas. Si pudieras decirme César o cualquier otro experto por aquí como generar usando la misma variable "pacientes" sería de gran ayuda, un saludo.

PD: Para el tema del rango encontré información en otra página http://www.chuidiang.com/clinux/funciones/rand.php

numero = rand () % (N-M+1) + M;   // Este está entre M y N // Fórmula general.

Código: [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
srand(time(NULL));
int pacientes= rand()%225+1;
printf("El numero de pacientes en la cola es %d\n", pacientes);
printf("Transcurridos 10 minutos el numero de pacientes en la cola es %d\n", rand()%225+1);
  return 0;
}
« Última modificación: 28 de Abril 2016, 08:16 por César Krall »

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Generar números o secuencias aleatorios en C. (CU00525F)
« Respuesta #4 en: 28 de Abril 2016, 08:17 »
Hola! El ejercicio está bien resuelto. Si quieres almacenar el valor aleatorio en la variable pacientes te basta realizar una asignación así:

Código: [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand(time(NULL));
int pacientes= rand()%225+1;
printf("El numero de pacientes en la cola es %d\n", pacientes);
pacientes= rand()%225+1;
printf("Transcurridos 10 minutos el numero de pacientes en la cola es %d\n", pacientes);
return 0;
}

Saludos!
Responsable de departamento de producción aprenderaprogramar.com

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".