4. 南港公司生產排程系統

現實應該是不會有這東西@@

string[] data = new string[5];
int l = 4, r = 0;
int size = 0;

string ask()
{
    Console.Write("請輸入物件編號: ");
    return Console.ReadLine();
}

bool full()
{
    if (size == 5)
    {
        Console.WriteLine($"生產線滿了!\n生產線線上有 {size} 物件");
        return true;
    }
    return false;
}

bool empty()
{
    if (size == 0)
    {
        Console.WriteLine($"生產線空的!\n生產線線上有 {size} 物件");
        return true;
    }
    return false;
}



void AL()
{
    string d = ask();
    if (full()) return;
    l++;
    if (l == 5) l = 0;
    data[l] = d;
    Console.WriteLine(@$"從左邊加入:
左邊作業員編號 : {l}
右邊作業員編號 : {r}
加入物件 : {d}
生產線線上有 {++size} 物件");
}

void AR()
{
    string d = ask();
    if (full()) return;
    r--;
    if (r == -1) r = 4;
    data[r] = d;
    Console.WriteLine(@$"從右邊加入:
左邊作業員編號 : {l}
右邊作業員編號 : {r}
加入物件 : {d}
生產線線上有 {++size} 物件");
}

void DL()
{
    if (empty()) return;
    string d = data[l];
    l--;
    if (l == -1) l = 4;
    Console.WriteLine(@$"從左邊刪除
左邊作業員編號 : {l}
右邊作業員編號 : {r}

刪除物件編號 : {d}
生產線線上有 {--size} 物件");
}


void DR()
{
    if (empty()) return;
    string d = data[r];
    r++;
    if (r == 5) r = 0;
    Console.WriteLine(@$"從右邊刪除
左邊作業員編號 : {l}
右邊作業員編號 : {r}

刪除物件編號 : {d}
生產線線上有 {--size} 物件");
}


while (true)
{
    Console.Write(@"南港公司生產排程系統
請選擇:
    1.從生產線左邊加入物件
    2.從生產線左邊刪除物件
    3.從生產線右邊加入物件
    4.從生產線右邊刪除物件
    5.生產排程結束
? ");
    switch (Console.ReadLine())
    {
        case "1":
            AL();
            break;
        case "2":
            DL();
            break;
        case "3":
            AR();
            break;
        case "4":
            DR();
            break;
        case "5":
            Console.WriteLine("生產排程系統結束!");
            return;
        default:
            Console.WriteLine("輸入錯誤! 請重新輸入!");
            break;
    }
}

Last updated