交通燈管理系統分析

2021-06-16 20:39:39 字數 1453 閱讀 1201

模擬實現十字路口的交通燈管理系統邏輯,具體需求如下:

非同步隨機生成按照各個路線行駛的車輛。

例如:由南向而來去往北向的車輛 ---- 直行車輛

由西向而來去往南向的車輛 ---- 右轉車輛

由東向而來去往南向的車輛 ---- 左轉車輛

。。。

訊號燈忽略黃燈,只考慮紅燈和綠燈。

應考慮左轉車輛控制訊號燈,右轉車輛不受訊號燈控制。

具體訊號燈控制邏輯與現實生活中普通交通燈控制邏輯相同,不考慮特殊情況下的控制邏輯。

注:南北向車輛與東西向車輛交替放行,同方向等待車輛應先放行直行車輛而後放行左轉車輛。

隨機生成車輛時間間隔以及紅綠燈交換時間間隔自定,可以設定。

不要求實現gui,只考慮系統邏輯實現,可通過log方式展現程式執行結果。

1:先畫分析圖

2:分析其中有哪些物件

3:  分析物件中有哪些屬性和方法

物件一:road

屬性有:name;vehicle

方法:vehicle的新增與刪除

public class road catch (interruptedexception e)

vehicles.add(road.this.name+"_"+i);}}

});//移除車定義乙個時間控制器

scheduledexecutorservice ses =executors.newscheduledthreadpool(1);

ses.scheduleatfixedrate(new runnable()

}}, 1, 1, timeunit.seconds);}}

物件二:lamp

屬性:name,nextlamp,lighted

public enum lamp

//綠亮判斷是否有下乙個燈

public void lamp()

system.out.println(name()+"綠燈亮。。。。。。。。");

}//紅燈

public lamp isblack()

lamp next=null;

if(nextstring!=null)

return next;

}public boolean islighted()

}4:設定控制lamp的類  

public class lampcontoller

}, 10, 10, timeunit.seconds );}}

5:新增road方向執行

public class mainrun ;

for (int i = 0; i < directions.length; i++)

new lampcontoller();

}乙個簡單的分析完結

交通燈管理系統

銀行業務排程系統模擬銀行排程系統邏輯。需求 銀行內有6個業務視窗,1 4為普通視窗,5為快速視窗,6為vip視窗。有三種型別客戶 vip客戶,快速客戶 交水電費類業務 普通客戶。一部隨機生成各種型別的客戶,概率比例為 vip客戶 快速客戶 普通客戶 1 3 6。客戶辦理用時設定最少時間。各型別客戶在...

交通燈管理系統

需求 模擬實現十字路口的交通燈管理系統邏輯,具體需求如下 1.非同步隨機生成按照各個路線行駛的車輛。例如 由南向而來去往北向的車輛 直行車輛 由西向而來去往南向的車輛 右轉車輛 由東向而來去往南向的車輛 左轉車輛 2.訊號燈忽略黃燈,只考慮紅燈和綠燈。3.應考慮左轉車輛控制訊號燈,右轉車輛不受訊號燈...

交通燈管理系統

1 非同步隨機生成按照各個路線行駛的車輛。例如 由南向而來去往北向的車輛 直行車輛 由西向而來去往南向的車輛 右轉車輛 由東向而來去往南向的車輛 左轉車輛 2 訊號燈忽略黃燈,只考慮綠燈和紅燈。3 應考慮左轉車輛控制訊號燈,右轉車輛不受訊號燈控制 4 具體訊號燈控制邏輯與現實生活中普通交通燈控制邏輯...