Challenge

Project 2 - Implement the Code for controlling the retraction and extension of Airplane’s landing gear

#include<stdio.h>


typedef enum

{
geardownstate,
takeoffdelaystate,
gearupstate,
raisinggearstate,

landingstate,

lowergearstate,

} systemstate;

typedef enum

{
takeoffdelayevent,
raisinggearevent,

gearupevent,

landingevent,

lowergearevent,

}systemevent;

systemstate lowergeareventhandler(void)

{
return geardownstate;
}

systemstate landinghandler(void)

{

return lowergearstate;

}

systemstate gearuphandler(void)

{
return gearupstate;
}

systemstate raisinggearhandler(void)

{
return raisinggearstate;
}

systemstate checkingbeforetakeoffdelayhandler(void)

{
return geardownstate;
}

int main(int argc , char*argv[])

{
systemstate nextstate = geardownstate;
systemevent newevent;

while(1)

{
switch(nextstate)
{
case geardownstate:
{
if(takeoffdelayevent == newevent)
{
nextstate = lowergeareventhandler();
}

}

break;

case takeoffdelaystate:

{

if(raisinggearevent == newevent)

{
nextstate = raisinggearhandler();
}

}

break;

case raisinggearstate:

{
if( gearupevent ==newevent)
{
nextstate = gearuphandler();
}
}
break;

case gearupstate:

{
if(landingevent == newevent)
{

nextstate = landinghandler();

}

}

break;

case lowergearstate:

{

if(lowergearevent == newevent)

{

nextstate = lowergeareventhandler();

}

}

break;

default:

break;

}

}

}

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.