Exemple #1
0
 public void Adopt(Dinosaur dino)
 {
     dinosaurs.Add(dino);
     Console.WriteLine($"\n{dino.GetRace()} {dino.GetName()} has been added to the Park.");
 }
Exemple #2
0
            static void Main(string[] args)
            {
                var dinosaurs = new List <Dinosaur>();

                //       P - Problem

                // Create a console application that manages a zoo full of dinosaurs.

                // Create an application that allows us to:

                // CRUD
                // - Create: Add (create) a new Dinosaur that is available for adoption
                // - Read: Get lists of Dinosaurs that are housed at the park - ordered by date acquired and by enclosure number
                // - Update: Update information about a dinosaur that is at the park
                // - Delete: Remove a dinosaur from the park

                // E - Examples:

                // - Name type of dinosaur - string
                // - Diet Type (herbivore/Carnivore) - string
                // - When Acquired  This will default to the current time when the dinosaur is created - int
                // - Weight  How heavy the dinosaur is in pounds- string
                // - Enclosure Number  the number of the pen the dinosaur is in - string



                // D - Data

                // Dinosaur class

                // list of Dinosaurs



                // A - Algorithm

                // Welcome the user to the application

                Console.WriteLine();
                Console.WriteLine();
                Console.WriteLine("||----WELCOME TO JURASSIC PARK----||");
                Console.WriteLine();
                Console.WriteLine();



                // While the user hasn't quit the application
                var hasQuitTheApplication = false;

                while (hasQuitTheApplication is false)
                {
                    // Show them a menu of options they can do

                    // View - This command will show the all the dinosaurs in the list, ordered by WhenAcquired

                    // Add - This command will let the user type in the information for a dinosaur and add it to the list.

                    // Remove -  This command will prompt the user for a dinosaur name then find and delete the dinosaur with that name.

                    // Transfer - This command will prompt the user for a dinosaur name and a new EnclosureNumber and update that dino's information.

                    // Summary - This command will display the number of carnivores and the number of herbivores.

                    // Quit - This will stop the program
                    Console.WriteLine("What do you want to do?");
                    Console.WriteLine("VIEW - View Dinosaurs in the park");
                    Console.WriteLine("ADD - Add a new dinosaur");
                    Console.WriteLine("REMOVE - Remove a dionsaur from the park");
                    Console.WriteLine("TRANSFER - Transfer dinosaur to a new enclosure");
                    Console.WriteLine("SUMMARY - Display number of herbivores and carnivores");
                    Console.WriteLine("QUIT - This will exit the program");
                    Console.WriteLine();
                    Console.WriteLine("CHOICE:");
                    var choice = Console.ReadLine().ToUpper();

                    if (choice == "QUIT")
                    {
                        hasQuitTheApplication = true;
                    }

                    if (choice == "VIEW")
                    {
                        // Show a list of all the dinosaurs.


                        var sorted = dinosaurs.OrderBy(dinosaur => dinosaur.whenAcquired);

                        Console.WriteLine($"{sorted}");
                    }

                    if (choice == "ADD")
                    {
                        Console.WriteLine("NAME: ");
                        var name = Console.ReadLine();

                        Console.WriteLine("DIET TYPE:");
                        var dietType = Console.ReadLine();

                        Console.WriteLine("WEIGHT:");
                        var weight = int.Parse(Console.ReadLine());

                        Console.WriteLine("ENCLOSURE:");
                        var enclosure = int.Parse(Console.ReadLine());

                        var dinosaur = new Dinosaur()
                        {
                            Name      = name,
                            DietType  = dietType,
                            Weight    = weight,
                            Enclosure = enclosure,
                        };
                        dinosaurs.Add(dinosaur);

                        // name
                        // DietType
                        // Weight
                        // time acquired
                        // enclosure
                        // make a new Dinosaur
                        // add Dinosaur to the park
                    }

                    if (choice == "REMOVE")
                    {
                        // remove dinosaurs from the park
                        Console.WriteLine("NAME: ");
                        var dinosaurToRemove = Console.ReadLine();

                        var removedino = dinosaurs.FirstOrDefault(dinosaurs => dinosaurs.Name == dinosaurToRemove);

                        if (removedino != null)
                        {
                            Console.WriteLine(removedino.Description());

                            Console.WriteLine("ARE YOU SURE, YES OR NO?");
                            var answer = Console.ReadLine();

                            if (answer == "YES")
                            {
                                dinosaurs.Remove(removedino);
                            }
                        }
                        else
                        {
                            Console.WriteLine($"There is no such Dinosaur {removedino} in Jurassic Park");
                        }
                    }
                    if (choice == "TRANSFER")
                    {
                        // update enclosure number
                        Console.WriteLine("NAME: ");
                        var dinosaurToRemove = Console.ReadLine();

                        var removedino = dinosaurs.FirstOrDefault(dinosaurs => dinosaurs.Name == dinosaurToRemove);

                        if (removedino != null)
                        {
                            Console.WriteLine(removedino.Description());

                            Console.WriteLine("ARE YOU SURE, YES OR NO?");
                            var answer = Console.ReadLine();

                            if (answer == "YES")
                            {
                                Console.WriteLine("NEW ENCLOSURE");
                                var newEnclosure = Console.ReadLine();

                                removedino.Enclosure = int.Parse(newEnclosure);
                            }
                        }
                    }
                    if (choice == "SUMMARY")
                    {
                        // display number of herbivores and carnivores


                        var herbivores = dinosaurs.Count(herb => herb.DietType == "herbivore");

                        var carnivores = dinosaurs.Count(herb => herb.DietType == "carnivore");


                        Console.WriteLine($"THERE ARE {herbivores} HERBIVORES IN THE PARK");



                        Console.WriteLine($"THERE ARE {carnivores} CARNIVORES IN THE PARK");
                    }



                    Console.WriteLine("---GOODBYE---");
                }
            }
Exemple #3
0
        static void Main(string[] args)
        {
            //Add Dinosaurs

            var Velociraptor = new Dinosaur
            {
                Name      = "Velociraptor",
                Diet      = "Herbivore",
                Acquired  = "May 14th 2020",
                Enclosure = "Unit A",
                Weight    = "50 lbs"
            };

            var Triceratops = new Dinosaur
            {
                Name      = "Triceratops",
                Diet      = "Herbivore",
                Acquired  = "May 15th 2020",
                Enclosure = "Unit A",
                Weight    = "500 lbs"
            };

            var Tyrannosaurus = new Dinosaur
            {
                Name      = "Tyrannosaurus",
                Diet      = "Carnivore",
                Acquired  = "May 14th 2020",
                Enclosure = "Unit B",
                Weight    = "800 lbs"
            };

            var Spinosaurus = new Dinosaur
            {
                Name      = "Spinosaurus",
                Diet      = "Carnivore",
                Acquired  = "May 16th 2020",
                Enclosure = "Unit B",
                Weight    = "600 lbs"
            };

            var Cryolophosaurus = new Dinosaur
            {
                Name      = "Cryolosaurus",
                Diet      = "Carnivore",
                Acquired  = "May 17h 2020",
                Enclosure = "Unit B",
                Weight    = "100 lbs"
            };
            //List the Dinos

            var listOfDinosaurs = new List <Dinosaur>();

            listOfDinosaurs.Add(Velociraptor);
            listOfDinosaurs.Add(Triceratops);
            listOfDinosaurs.Add(Tyrannosaurus);
            listOfDinosaurs.Add(Spinosaurus);
            listOfDinosaurs.Add(Cryolophosaurus);



            //foreach (var dinosaur in listOfDinosaurs)
            //{
            //  Console.WriteLine(dinosaur.Name);
            //}


            //var dinosaursThatAreCarnivores = listOfDinosaurs.Where(dinosaur => dinosaur.Diet == "Carnivore");



            //foreach (var dinosaur in dinosaursThatAreCarnivores)
            // {
            //    Console.WriteLine($"{dinosaur.Name}");

            // }



            Console.WriteLine();
            Console.WriteLine("Welcome to the Dinosaur Zoo");
            Console.WriteLine();

            //If They Quit
            var userHasChosenToQuit = false;

            while (userHasChosenToQuit == false)
            {
                Console.WriteLine("Choose: ");


                //Add Dino
                Console.WriteLine("(A)dd a new Dinosaur");
                //Remove
                Console.WriteLine("(R)emove a Dinosaur");

                //View all Dinos
                Console.WriteLine("(V)iew all Dinosaurs");
                //TransferDino to different Enclosure
                Console.WriteLine("(T)ransfer a Dinosaur");
                //List Herbavores and Canivores
                Console.WriteLine("(S)ummary of Herbavores and Carnivores");
                //Quit App
                Console.WriteLine("(Q)uit");
                Console.WriteLine();

                //Separate Dinos

                var choice = PromptForString("Choice: ");

                if (choice == "S")
                {
                    var choiceOfDiet = PromptForString("(C)arnivores or (H)erbivores?");

                    var dinosaursThatAreCarnivores = listOfDinosaurs.Where(dinosaur => dinosaur.Diet == "Carnivore");
                    var dinosaursThatAreHerbivores = listOfDinosaurs.Where(dinosaur => dinosaur.Diet == "Herbivore");
                    if (choiceOfDiet == "C")
                    {
                        foreach (var dinosaur in dinosaursThatAreCarnivores)
                        {
                            Console.WriteLine(dinosaur.Name);
                        }
                    }

                    if (choiceOfDiet == "H")
                    {
                        foreach (var dinosaur in dinosaursThatAreHerbivores)
                        {
                            Console.WriteLine(dinosaur.Name);
                        }
                    }
                }

                //To Quit for some reason
                if (choice == "Q")
                {
                    userHasChosenToQuit = true;
                }
                //To Remove Dino

                //
                // if (foundDinosaur == null)
                //{
                //                         Console.WriteLine($"There is no Dinosaur named {foundDinosaur}");
                //                         break;

                // }

                //
                if (choice == "R")
                {
                    var nameOfDinosaurBeingRemoved = PromptForString("Name of dinosaur to be removed: ");
                    var foundDinosaur            = listOfDinosaurs.FirstOrDefault(dinosaurs => nameOfDinosaurBeingRemoved == dinosaurs.Name);
                    var foundDinosaurDescription = foundDinosaur.Description();
                    Console.WriteLine(foundDinosaurDescription);
                    var shouldWeRemove = PromptForString("Are you sure you want to remove? (Y/N):");

                    if (shouldWeRemove == "Y")
                    {
                        listOfDinosaurs.Remove(foundDinosaur);
                    }

                    if (shouldWeRemove == "N")
                    {
                        Console.WriteLine("Okay, back to main menu");
                    }
                }

                //To Add a Dino
                if (choice == "A")
                {
                    var newName      = PromptForString("Name: ");
                    var newDiet      = PromptForString("Diet: ");
                    var newWeight    = PromptForString("Weight: ");
                    var newAcquired  = PromptForString("Acquired: ");
                    var newEnclosure = PromptForString("Enclosure: ");

                    listOfDinosaurs.Add(new Dinosaur
                    {
                        Name      = newName,
                        Diet      = newDiet,
                        Weight    = newWeight,
                        Acquired  = newAcquired,
                        Enclosure = newEnclosure,
                    });
                }

                //Show all Dinos
                if (choice == "V")
                {
                    Console.WriteLine("Here are all our dinosaurs");


                    //Name is a diet that weighs they were committed on and are located at
                    foreach (var Dinosaurs in listOfDinosaurs)
                    {
                        var description = Dinosaurs.Description();
                        Console.WriteLine(description);
                    }
                }

                //Transfer Dino

                if (choice == "T")
                {
                    var nameOfDinosaurToTransfer = PromptForString("Which Dinosaur would you like to update with their new Enclosure?");
                    var foundDinosaur            = listOfDinosaurs.FirstOrDefault(dinosaur => dinosaur.Name == nameOfDinosaurToTransfer);

                    if (foundDinosaur == null)
                    {
                        Console.WriteLine($"There is no dinosaur named {nameOfDinosaurToTransfer}");
                    }
                    else
                    {
                        var foundDinosaurDescription = foundDinosaur.Description();
                        Console.WriteLine(foundDinosaurDescription);
                        var newDinosaurEnclosure = PromptForString("Unit A or Unit B for new Enclosure?: ");
                        foundDinosaur.Enclosure = newDinosaurEnclosure;
                    }
                }
            }
        }