Firmware Engineer

מאת JobHunt

הייתי בראיון ב APPLE לא מזמן לתפקיד FW Enigneer.הנה שאלה ששאלו אותי שם.

אני לא עברתי. לא יודע אם אני מצטער על זה או לא…

נתון בניין בן שמונה קומות עם מעלית.

נתונות הפונקציות הבאות.


void EngineUp()
void EngineDown()
void EngineStop()
STATE EngineStateGet()

כאשר STATE הוא ה ENUM הבא

enum STATE{
UP=0,
DOWN,
STOP
};
int EngineGetCurrFloor()

ובנוסף ישנה עוד פסיקת חומרה שקוראת לפונקצייה הבאה בכל פעם שלוחצים על אחד הכפתורים במעלית

void EnignePressedFloor(int floor)

הפוקצייה מקבלת כפרמטר את הקומה שבה נלחץ כפתור המעלית

נתבקשתי לכתוב קוד שיממש אלגוריתם של המעלית?
הייתי צריך להתייחס למבנה הנתונים שבו אני אשתמש. לdesign הכללי של הקוד ולאחר מכן לכתוב את הקוד על דף.
כמו-כן הייתי צריך להתייחס לבעיות RT שיכולות לקרות, וכיצד ניתן לפתור אותם.

בהצלחה!!!

לבדיקת התאמה