Yahoo奇摩知識+ 將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+ 網站將會轉為唯讀模式。其他 Yahoo奇摩產品與服務或您的 Yahoo奇摩帳號都不會受影響。如需關於 Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

Elaine☆貽° 發問時間: 健康心理健康 · 1 0 年前

運用Samphore(號誌)設計一套機制?(作業系統)

期中考前重點作業ˊˋ拜託懂此道的大大幫解題一下謝謝摟

某大學宿舍沒有個別浴室只有一間大澡堂,男生和女生都可以使用這間大澡堂,但是不同性別者不能共用大澡堂,因此大澡堂有三種狀態:

空的:此時想要洗澡的人都可以進入大澡堂,不限性別

女性使用中:表示大澡堂已經有女生在裡面,女生可以入內,男生不得進入

男性使用中:表示大澡堂已經有男生在裡面,男生可以入內,女生不得進入

請運用Samphore(號誌)設計一套機制,以維護大澡堂的使用秩序。

您的設計應該包含下列程序:

woman_wants_to_enter (女生想要入內) 、man_wants_to_enter (男生想要入內)、

woman_leaves(女生離開) 、man_leaves(男生離開)

1 個解答

評分
  • 1 0 年前
    最佳解答

    boolean status = occupied / not occupied. (true/false)

    boolean man_or_women = man / women. (true/false)

    boolean enter = yes / no. (true/false)

    boolean woman_wants_to_enter (status, man_or_woman) return true / false;

    boolean man_wants_to_enter (status, man_or_woman) return true / false;

    boolean woman_leaves(enter) return true / false;

    boolean man_leaves(enter) return true / false;

    while ( status != occupied && people != 0) {

    if (woman_wants_to_enter (status, man_or_woman)) return woman_leaves(enter);

    if (man_wants_to_enter (status, man_or_woman)) return man_leaves(enter);

    }

還有問題?馬上發問,尋求解答。