/* Patrick Andrade */
/* Final question 5 */
using System;
using System.Collections.Generic;
class BeverageManager
{
static void Main(string[] args)
{
Queue<string> beverageQueue = new Queue<string>();
// Initial 5 beverages
beverageQueue.Enqueue("Budweiser (Beer)");
beverageQueue.Enqueue("Beringer Cabernet Sauvignon (Wine)");
beverageQueue.Enqueue("Johnnie Walker Black Label (Whiskey)");
beverageQueue.Enqueue("Sierra Nevada Pale Ale (Beer)");
beverageQueue.Enqueue("Chateau Ste. Michelle Chardonnay (Wine)");
Console.WriteLine("Initial Beverage Queue:");
PrintCollection(beverageQueue);
Console.WriteLine("\nRemoving two items from the queue...");
beverageQueue.Dequeue();
beverageQueue.Dequeue();
PrintCollection(beverageQueue);
Console.WriteLine("\nAdding three new beverages to the queue...");
beverageQueue.Enqueue("Guinness Draught (Beer)");
beverageQueue.Enqueue("Kendall-Jackson Merlot (Wine)");
beverageQueue.Enqueue("Jameson Irish Whiskey");
PrintCollection(beverageQueue);
Stack<string> beverageStack = new Stack<string>();
foreach (var item in beverageQueue)
{
beverageStack.Push(item);
}
Console.WriteLine("\nInitial Beverage Stack:");
PrintCollection(beverageStack);
Console.WriteLine("\nAdding two new beverages to the stack...");
beverageStack.Push("Heineken Lager (Beer)");
beverageStack.Push("Barefoot Moscato (Wine)");
PrintCollection(beverageStack);
Console.WriteLine("\nRemoving three items from the stack...");
beverageStack.Pop();
beverageStack.Pop();
beverageStack.Pop();
PrintCollection(beverageStack);
}
static void PrintCollection<T>(IEnumerable<T> collection)
{
foreach (var item in collection)
{
Console.WriteLine("- " + item);
}
}
}