C/Visual C - Ayuda con programa para estacionamientos en C++

 
Vista:
Imágen de perfil de Isabella

Ayuda con programa para estacionamientos en C++

Publicado por Isabella (1 intervención) el 14/06/2018 18:26:39
Hola no tengo ni idea como haer un programa para una tarea. Consiste en esto, si alguien me ayuda se lo agradeceria mucho:
Simulador del metro
Realice un programa en C++ que permita simular la subida el recorrido del metro a lo largo de 10 estaciones. El simulador debe generar en cada estación una cantidad de personas aleatorias que suben y bajan del metro. Considere que el metro tiene una capacidad de 100 personas por cada vagón con un total de 5 vagones. Los tiempos de viaje entre las estaciones son los siguientes:
Estación 1 – Estación 2: 2 segundos
Estación 2 – Estación 3: 4 segundos
Estación 3 – Estación 4: 2 segundos
Estación 4 – Estación 5: 5 segundos
Estación 5 – Estación 6: 3 segundos
Estación 6 – Estación 7: 7 segundos
Estación 7 – Estación 8: 4 segundos
Estación 8 – Estación 9: 2 segundos
Estación 9 – Estación 10: 3 segundos
Hint:
Utilice un ciclo for donde cada iteración representa una estación
Use la función rand() para generar valores aleatorios, por ejemplo: int num = 1+rand()%(11-1) genera valores aleatorios entre 1 y 10
Use la función sleep() para simular el tiempo de viaje entre estaciones, por ejemplo: sleep(3000) pausa el programa por 3 segundos
Utilice un arreglo para simular los vagones del metro
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 89
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Ayuda con programa para estacionamientos en C++

Publicado por Bruno (38 intervenciones) el 07/08/2018 03:24:41
Isabella, podría ser algo así. Espero te sirva.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
int main() {
  int tiempos[] = {2, 4, 2, 5, 3, 7, 7, 4, 2, 3};
  int vagones[] = {0, 0, 0, 0, 0};
 
  printf("Simulador de metro");
 
  // Iniciando viaje
  for( int i=0; i < 10; i++) {
    printf("Estación %i", i);
 
    // Suben y bajan personas en cada vagon
    for(int j = 0; j < 5; j++) {
       int bajan = Bajan(vagones[j]);
       vagones[j] -= bajan;
       int suben = Suben(vagones[j]);
       vagones[j] += suben;
       printf("Bajan del vagon %i %i", j, bajan);
       printf("Suben al vagon %i %i", j, suben);
    }
 
    printf("Viajando a la siguiente estación...");
    sleep(tiempos[i] * 1000);
  }
}
 
// Pueden bajar de 0 a cant
int Bajan(int cant) {
  int personas = 0 + rand() % (cant - 1);
  return personas;
}
 
// Pueden subir de 0 a 100 - cant de personas en el vagon
int Suben(int cant) {
  int personas = 0 + rand() % (101-1-cant);
 
  return personas;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar