Un trabajo de programa en C para simular el funcionamiento del ascensor
Para simplificar, asignamos las capas 1 a 9. Además, no incluimos cuántas personas presionaron al mismo tiempo, pero eso no es difícil. Luego asignamos 10 variables para cada capa. y los presionamos aleatoriamente. Luego lo procesamos primero hacia arriba o directamente hacia abajo. Pero eso realmente se puede usar
#include lt; .hgt;
#include lt;ctype.hgt;
#define ON 1
#define OFF 0
main() {
int power, i;
char oldkey,
estructura fecha hoy
estructura hora
getdate(amp; hoy); /*Guardar la fecha actual del sistema en la estructura de fechas señalada por hoy*/
gettime(amp;now
gotoxy(25, 3 );
printf("La fecha de hoy es d-d-d\n", hoy.da_año, hoy.da_mon, hoy.da_día
gotoxy(25, 6);
printf("La hora actual es 02d: 02d: 02d\n", now.ti_hour, now.ti_min, now.ti_sec
if( now.ti_hourgt); ; =8||( now.ti_hourlt;=23amp;amp;now.ti_minlt;59)){
encendido =ON
printf("\n\n\nLevantar; la energía está encendida. El elevador se detiene en 1 piso.");
}
else {
power=OFF;
printf( "El elevador está apagado. ");
}
oldkey=0
while(power==ON) {
printf("\n\ n\nPiso");
for(i=1;ilt;10;i)
printf("\n d",i ); p>
printf ("\nPresione el número de piso o q para apagar la energía:");
if( now.ti_hourgt;=8||(now.ti_hourlt;=23amp;amp;now). .ti_minlt;59))
energía=ON;
else
energía=OFF
key=bioskey(0);
clave=keyamp; 0x00ff;
sistema("cls");
if(clave=='0'){
power=OFF;
printf("\n\n Apagar");
dormir(1);
}
p>
if(keygt;llave antigua)
p>
printf(" c ¡Sube!...", 24);
if(keylt; oldkey)
printf(" c ¡Baja!... ", 25);
if(key==oldkey)
printf(" c ok, estás aquí", 22);
sleep(2) ;
sistema("cls");
printf("\n\n ");
cambiar(clave){
caso '1':
if(key==oldkey)
printf(" está bien, estás aquí",
else if( keygt; oldkey)
printf("c ¡Sube!... detente en el piso c.", 24, key);
else
printf( "c ¡Baja!... detente en el piso c.", 25, clave
oldkey=key
break
case '2; ':
if(key==oldkey)
printf(" c ok, estás aquí",
else if(keygt;oldkey)
printf("c ¡Sube!... detente en el piso c.", 24, tecla
else
printf("c Baja). !...para en el piso c.", 25, clave);
oldkey=clave;
romper;
caso '3': p>
llave antigua=clave;
caso '3':
p>
if(clave==llave antigua)
printf(" c ok, estás aquí", 22);
else if(keygt;oldkey)
printf("c ¡Sube!...detente en el piso c.", 24, key);
else
printf("c ¡Baja!... detente en el piso c.", 25, key
oldkey=key); ;
break;
case '4':
if(key==oldkey)
printf(" c está bien aquí", 22);
else if(keygt;oldkey)
printf ("c ¡Sube!...para en el piso c.", 24, clave);
else
printf("c ¡Baja!...detente en el piso c.", 25, clave);
oldkey=key; >
break;
case '5':
if(key ==oldkey)
printf(" c ok, estás aquí", 22
else if(keygt; clave antigua)
<p>printf("c ¡Sube!...detente en el piso c.", 24, tecla
else
printf("c ¡Baja!...detente); en piso c.", 25, clave);
oldkey=clave;
romper;
caso '6':
if(key==oldkey)
printf(" c ok, estás aquí", 22
else if(keygt;oldkey)
printf( "c ¡Sube!...para en el piso c.", 24, key);
else
printf("c ¡Baja!...para en el piso c. " ", 25, clave);
oldkey=clave;
romper
caso '7':
if(clave); = =oldkey)
printf(" c ok, estás aquí", 22
else if(keygt; oldkey)
printf("c Ir); arriba!...para en el piso c.", 24, key);
else
printf("c ¡Baja!...para en el piso c.", 25 , clave);
clave anterior=clave;
romper;
caso '8':
if(clave==clave anterior)
printf(" c ok, estás aquí", 22);
else if(keygt; oldkey)
printf("c ¡Sube!.. . para en el piso c.", 24, clave);
else
printf("c ¡Baja!...para en el piso c.", 25, clave);
llave antigua=clave;
romper;
caso '9':
if(clave==llave antigua)
printf(" c ok, estás aquí", 22);
else if(keygt; oldkey)
printf("c ¡Sube!...detente en c piso.", 24, clave);
else
printf("c ¡Baja!...detente en c piso.", 25, clave);
oldkey=clave
romper
}
}
getch(); }