模擬燒茶的過程:
1)燒水
2)需要茶葉的時候發現沒茶葉,叫eric去買(沒有茶葉,需要買)
3)需要杯子的時候發現沒杯子,叫meten去買(沒有杯子,需要買)
4)放茶葉
3)倒水
public class execdemo2
}/**
* 共享資料tea
* @author administrator
* */
class tea
public void settea(boolean istea) }
/** * 共享資料teacup
* @author administrator
* */
class teacup
public void setteacup(boolean isteacup)
}/**
* 管理執行緒 burnttea
* @author administrator
* */
class burnttea extends thread
public void run() catch (interruptedexception e)
if(this.tea.istea())
} while(!this.teacup.isteacup()) catch (interruptedexception e)
if(this.teacup.isteacup())
} system.out.println(name + "放茶葉");
system.out.println(name + "放水");
try catch (interruptedexception e)
system.out.println("茶燒好啦"); }}
/** * 買茶杯執行緒
* @author administrator
* */
class buyteacup extends thread
public void run() catch (interruptedexception e)
system.out.println(name + "買茶杯回來啦");
int a = (int)(math.random() * 1000) % 3;
switch(a)
}}/**
* 買茶葉執行緒
* @author administrator
* */
class buytea implements runnable
public void run() catch (interruptedexception e)
system.out.println(name + "買茶葉回來啦");
int a = (int)(math.random() * 1000) % 4;
switch(a)
}}
模擬ICMP過程
首先建立common標頭檔案 comm.h檔案 包含一些公共函式 ifndef comm h define comm h 校驗和的計算 以16位的字為單位將緩衝區的內容相加,如果緩衝區長度為奇數,則再加上乙個位元組。它們的和存入乙個32位的雙字中 ushort checksum ushort buf...
選擇排序過程模擬
選擇排序是一種簡單直觀的排序演算法。它的工作原理很容易理解 初始時在序列中找到最小 大 元素,放到序列的起始位置作為已排序序列 然後,再從剩餘未排序元素中繼續尋找最小 大 元素,放到已排序序列的末尾。以此類推,直到所有元素均排序完畢 可以使用for迴圈完成操作 include include inc...
模擬ATM機取款的過程
1 定義三個能儲存5個整形數的陣列,乙個用於儲存5個人的卡號,乙個用於儲存對應卡號的密碼,乙個用於儲存對應的賬戶餘額。2 判斷輸入的卡號是否在陣列中。3 如果在陣列中就讓輸入密碼,判斷是否和卡號對應的密碼匹配。4 判斷密碼,只允許輸入3次錯誤的密碼。輸入錯誤應該提示還剩下的輸入次數,3次都輸入錯誤提...