Simulación de Semáforo

Amigo esto es para un trabajo.
Crear una simulación de un semaforoque presente una interfaz gráfica animada, esto serian los campos a utilizar:
*  Introduzca el tiempo en segundos en el que se va a realizar la Simulación:
*  Introduzca el tiempo en segundo del cambio de color de los semaforo:
Pero no se con que código se realiza con PHP con el tiempo
(El Semáforo 1 esta en Verde y el Semáforo 2 en Rojo )
(El Semáforo 2 esta en Rojo y el Semáforo 1 en Verde)
--------------------------------------------------------------------------------------------------
el Profesor nos entrego el cdigo en C++
Que es este:
#include <stdio.h>
#include <time.h>
//funcion
int cambiarColor( int );
main(  )
{
int tiempoSimulacion, tiempo;
int semaforo1 = 0, semaforo2 = 1;
bool entraPrimerVez = true;
time_t comienzo, actual;
//Se introduce el tiempo durante el cual se va a ejecutar la simulacion
//Y tambien el tiempo en el que queremos que cambie el color del semaforo
printf( "Introduzca el tiempo en segundos en el que se va a realizar la simulacion:" );
scanf( "%d", &tiempoSimulacion );
printf( "Introduzca el tiempo en segundos del cambio del color de los semaforos:" );
scanf( "%d", &tiempo );
comienzo = time( NULL );
do
{
actual = time( NULL );
//Entra al cuerpo del if cada vez que haya transcurrido el tiempo de cambio ingresado por el usuario
if( int( difftime(actual, comienzo) ) % tiempo == 0 && entraPrimerVez )
{
entraPrimerVez = false;
semaforo1 = cambiarColor( semaforo1 );
semaforo2 = cambiarColor( semaforo2 );
if( semaforo1 == 1 )
{
printf( "El semaforo 1 esta en Verde y el semaforo 2 en Rojo\n" );
}
else
{
printf( "El semaforo 1 esta en Rojo y el semaforo 2 en Verde\n" );
}
}
if( int( difftime(actual, comienzo) ) % tiempo > 0 )
{
entraPrimerVez = true;
}
}
while( int( difftime(actual, comienzo) ) < tiempoSimulacion );
return 0;
}
int cambiarColor( int semaforo )
{
//Si el valor del semaforo_1 es 1 es porque este semáforo este en verde, lo que indica que este
pasa a rojo
//Y el semaforo_2 pasaría a verde, de lo contrario se invertiría el color según lo explicado
anteriormente
if( semaforo == 1 )
{
semaforo = 0;
}
else
{
semaforo = 1;
}
return semaforo;
}
-------------------------------------------------------

3 respuestas

Respuesta
1
No para php no existe una función que te permita ejecutar tareas cada cierto tiempo como en C o java, la única opción que tienes seria agregar esa funcionalidad con javascript con las funciones setTimeout() y setInterval(). Averigua un poco de eso.
Respuesta
1
Con tecnología PHP que es tecnología de servidor no puedes realizar cambios 'automàticos' a la página. En realidad hay una manera, pero no es muy ortodoxa, que consiste en refrescar la página al cabo de un cierto tiempo.
Para realizar esta simulación del semáforo te recomiendo más usar Javascript.
Respuesta
1
Te soy sincero. Nosotros los expertos generalmente resolvemos casos puntuales, pues recuerda que la mayoría de nosotros hacemos una labor solidaria y resolvemos las dudas en parte de nuestro tiempo libre. ¿Lo qué tu pides es hacerte el trabajo y pues la verdad primero esta algo extenso y segundo la idea es también que aprendas un poco no? Te sugiero primero que busques en google si existe una aplicación que simule semáforos que este hecha o alguna parecida, que te pueda ayudar a hacer tu código. Lo otro es que debes de empaparte un poco de la programación en php, buscar el manual y leer algo de ello.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas