Ascensor C usando threads/ Project elevators using threads in C

Job ID: 33455731

Budget: €8 – €30 EUR

If you need me to translate it to English I can do it too.

Realice un software utilizando hilos que gestione el funcionamiento teniendo en cuenta que existirán m personas que desean solicitar un ascensor y que existen dos ascensores en este edificio. La cantidad de personas será introducida en una variable al inicio del programa. La cantidad de ascensores en
el edificio será definida por una constante.

• Si es preciso, utilice semáforos para sincronizar los múltiples hilos que figuren en este problema.

• La cantidad de tiempo que un ascensor tarda por cada planta es de 1 segundo. No se tendrá en cuenta la
cantidad de tiempo que una persona tarda en entrar o salir del ascensor.

• Cada persona cogerá tan sólo una vez un ascensor y tan sólo podrá encontrarse una persona en un ascensor
a la vez.

• No es necesario que el programa termine cuando todas las personas hayan terminado de coger su ascensor.

• La planta de destino de cada persona será un número aleatorio. Para generar este número se puede utilizar
la función rand(), y el número deberá estar comprendido entre el intervalo [1,10]. Si el número aleatorio
concuerda con el número de planta que se encuentra la persona, deberá volverse a calcular este valor hasta
que éste sea diferente al valor de la planta donde se encuentre la persona.

• Cada persona inicialmente se encuentra en una planta del edificio al azar. Para ello, utilice igualmente la
función rand() citada en el punto anterior.

• Todos los ascensores partirán inicialmente desde la primera planta del edificio.