SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
TECNOLOGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA
INGENIERIA EN INFORMATICA
NOMBRE: Espiritu Mateos Miriam
PROFESOR: Chimal Villavicencio Daniel
GRUPO: 2402
MATERIA: Sistemas operativos 1
PRÁCTICA
programa SEMAFOROS
#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 simulacionn" );
scanf( "%d", &tiempoSimulacion );
printf( "Introduzca el tiempo en segundos del cambio del color de los semaforosn" );
scanf( "%d", &tiempo );
comienzo = time( NULL );
do
{
actual = time( NULL );
//Entra al cuerpo del if cada que haya transcurrido el tiempo de cambio ingresadopor 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 Rojonn" );
}
else
{
printf( "El semaforo 1 esta en Rojo y el semaforo 2 en Verdenn" );
}
}
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 semaforo este en verde, lo que indica que
este pasa a rojo
//y el semaforo_2 pasaria a verde, de lo contrario se invertiria el color segun lo explicado
anteriormente
if( semaforo == 1 )
{
semaforo = 0;
}
else
{
semaforo = 1;
}
return semaforo;
}

Más contenido relacionado

La actualidad más candente

Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempoUVM
 
Problemas propuestos 4
Problemas propuestos 4Problemas propuestos 4
Problemas propuestos 4emidacent
 
Ejercicios de algoritmos
Ejercicios de algoritmosEjercicios de algoritmos
Ejercicios de algoritmos1002pc4
 
Funciones y procedimientos_propios_lpp
Funciones y procedimientos_propios_lppFunciones y procedimientos_propios_lpp
Funciones y procedimientos_propios_lppunicaucacpe
 
Sentencia For
Sentencia ForSentencia For
Sentencia Forciberosv
 
Ejercicios resueltos pascal
Ejercicios resueltos pascalEjercicios resueltos pascal
Ejercicios resueltos pascalAdriana Jimenez
 
Gotoxy
GotoxyGotoxy
GotoxyGioc
 

La actualidad más candente (12)

Bucles repetitivos
Bucles repetitivos Bucles repetitivos
Bucles repetitivos
 
Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempo
 
Problemas propuestos 4
Problemas propuestos 4Problemas propuestos 4
Problemas propuestos 4
 
Ejercicios de algoritmos
Ejercicios de algoritmosEjercicios de algoritmos
Ejercicios de algoritmos
 
5.instrucciones de control en c++ parte 2
5.instrucciones de control en c++  parte 25.instrucciones de control en c++  parte 2
5.instrucciones de control en c++ parte 2
 
Practica8
Practica8Practica8
Practica8
 
Funciones y procedimientos_propios_lpp
Funciones y procedimientos_propios_lppFunciones y procedimientos_propios_lpp
Funciones y procedimientos_propios_lpp
 
Sentencia For
Sentencia ForSentencia For
Sentencia For
 
Ejercicios resueltos pascal
Ejercicios resueltos pascalEjercicios resueltos pascal
Ejercicios resueltos pascal
 
Clase 7
Clase 7Clase 7
Clase 7
 
Elvis
ElvisElvis
Elvis
 
Gotoxy
GotoxyGotoxy
Gotoxy
 

Destacado (20)

Mecanismo de-semáforos
Mecanismo de-semáforosMecanismo de-semáforos
Mecanismo de-semáforos
 
Hackaton Urbano- Ciclo-inclusion
Hackaton Urbano- Ciclo-inclusionHackaton Urbano- Ciclo-inclusion
Hackaton Urbano- Ciclo-inclusion
 
Hackaton Urbano- Medidor de accidentes en semáforos
Hackaton Urbano- Medidor de accidentes en semáforosHackaton Urbano- Medidor de accidentes en semáforos
Hackaton Urbano- Medidor de accidentes en semáforos
 
Los semáforos
Los semáforosLos semáforos
Los semáforos
 
Nuevas tecnologías energéticas
Nuevas tecnologías energéticasNuevas tecnologías energéticas
Nuevas tecnologías energéticas
 
Semaforos
SemaforosSemaforos
Semaforos
 
semaforos
semaforossemaforos
semaforos
 
Senales cnsv
Senales cnsvSenales cnsv
Senales cnsv
 
Semaforos
SemaforosSemaforos
Semaforos
 
Semaforos 3
Semaforos 3Semaforos 3
Semaforos 3
 
Sem plc
Sem plcSem plc
Sem plc
 
A quién se le ocurrieron los colores de los semáforos
A quién se le ocurrieron los colores de los semáforosA quién se le ocurrieron los colores de los semáforos
A quién se le ocurrieron los colores de los semáforos
 
Semaforos
SemaforosSemaforos
Semaforos
 
Semaforo inteligante
Semaforo inteliganteSemaforo inteligante
Semaforo inteligante
 
Capitulo7 semaforos
Capitulo7 semaforosCapitulo7 semaforos
Capitulo7 semaforos
 
Semaforos
SemaforosSemaforos
Semaforos
 
Semáforos
SemáforosSemáforos
Semáforos
 
Semaforos 2
Semaforos 2Semaforos 2
Semaforos 2
 
JUEGOS PARA REALIZAR CON NIÑOS CON AUTISMO
JUEGOS PARA REALIZAR CON NIÑOS CON AUTISMOJUEGOS PARA REALIZAR CON NIÑOS CON AUTISMO
JUEGOS PARA REALIZAR CON NIÑOS CON AUTISMO
 
El semaforo
El semaforoEl semaforo
El semaforo
 

Similar a Semaforos (20)

Algoritmos - Funciones C++
Algoritmos - Funciones C++ Algoritmos - Funciones C++
Algoritmos - Funciones C++
 
Multitarea e hilos en java con ejemplos
Multitarea e hilos en java con ejemplosMultitarea e hilos en java con ejemplos
Multitarea e hilos en java con ejemplos
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Intro PyGame Capitulo 5
Intro PyGame Capitulo 5Intro PyGame Capitulo 5
Intro PyGame Capitulo 5
 
Cur04 05 pract06c++
Cur04 05 pract06c++Cur04 05 pract06c++
Cur04 05 pract06c++
 
Recopilacion
RecopilacionRecopilacion
Recopilacion
 
Viernes Tecnicos DTrace
Viernes Tecnicos DTraceViernes Tecnicos DTrace
Viernes Tecnicos DTrace
 
Prueba programacion
Prueba programacionPrueba programacion
Prueba programacion
 
Prac7
Prac7Prac7
Prac7
 
Cecytem
CecytemCecytem
Cecytem
 
20 programas
20 programas20 programas
20 programas
 
05 guia-arena
05 guia-arena05 guia-arena
05 guia-arena
 
Carla guaman 6_a_ti_3
Carla guaman 6_a_ti_3Carla guaman 6_a_ti_3
Carla guaman 6_a_ti_3
 
Cuenta tiempo
Cuenta tiempoCuenta tiempo
Cuenta tiempo
 
Semana 7 while for (2).pptx introduccion a la computacion
Semana 7  while for (2).pptx introduccion a la computacionSemana 7  while for (2).pptx introduccion a la computacion
Semana 7 while for (2).pptx introduccion a la computacion
 
JAVA ciclos (FOR Y WHILE)
JAVA ciclos  (FOR Y WHILE)JAVA ciclos  (FOR Y WHILE)
JAVA ciclos (FOR Y WHILE)
 
Programas básico en Lenguaje C
Programas básico en Lenguaje CProgramas básico en Lenguaje C
Programas básico en Lenguaje C
 
Recopilacion
RecopilacionRecopilacion
Recopilacion
 
8 b refactoring
8 b refactoring8 b refactoring
8 b refactoring
 
2023.1 S2 - Variables y Expresiones - CS1111_.pptx
2023.1 S2 - Variables y Expresiones - CS1111_.pptx2023.1 S2 - Variables y Expresiones - CS1111_.pptx
2023.1 S2 - Variables y Expresiones - CS1111_.pptx
 

Más de Miriam Espiritu

Más de Miriam Espiritu (7)

Anorexia y bulimia
Anorexia y bulimiaAnorexia y bulimia
Anorexia y bulimia
 
S.O DISTRIBUIDO
S.O DISTRIBUIDOS.O DISTRIBUIDO
S.O DISTRIBUIDO
 
instalacion de S.O solaris
instalacion de S.O solarisinstalacion de S.O solaris
instalacion de S.O solaris
 
Server backup
Server backupServer backup
Server backup
 
S.O ubuntu
S.O ubuntu S.O ubuntu
S.O ubuntu
 
Ubuntu&xp
Ubuntu&xpUbuntu&xp
Ubuntu&xp
 
server Wds
server Wdsserver Wds
server Wds
 

Semaforos

  • 1. TECNOLOGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA INGENIERIA EN INFORMATICA NOMBRE: Espiritu Mateos Miriam PROFESOR: Chimal Villavicencio Daniel GRUPO: 2402 MATERIA: Sistemas operativos 1 PRÁCTICA programa SEMAFOROS
  • 2. #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 simulacionn" ); scanf( "%d", &tiempoSimulacion ); printf( "Introduzca el tiempo en segundos del cambio del color de los semaforosn" ); scanf( "%d", &tiempo ); comienzo = time( NULL ); do { actual = time( NULL );
  • 3. //Entra al cuerpo del if cada que haya transcurrido el tiempo de cambio ingresadopor 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 Rojonn" ); } else { printf( "El semaforo 1 esta en Rojo y el semaforo 2 en Verdenn" ); } } if( int( difftime(actual, comienzo) ) % tiempo > 0 ) { entraPrimerVez = true; } } while( int( difftime(actual, comienzo) ) < tiempoSimulacion ); return 0; }
  • 4. int cambiarColor( int semaforo ) { //Si el valor del semaforo_1 es 1 es porque este semaforo este en verde, lo que indica que este pasa a rojo //y el semaforo_2 pasaria a verde, de lo contrario se invertiria el color segun lo explicado anteriormente if( semaforo == 1 ) { semaforo = 0; } else { semaforo = 1; } return semaforo; }