コード例 #1
0
ファイル: Program.cs プロジェクト: Harlintong/Contraband
        static void Main(string[] args)
        {
            Car car = new Car();

            Console.WriteLine("How many car shall be created?");

            int carAmount = 0;

            while (carAmount < 1)
            {
                Console.Write("Amount: ");
                string pCarAmount = Console.ReadLine();

                if (string.IsNullOrEmpty(pCarAmount) || pCarAmount.All(char.IsLetter))
                {
                    Console.WriteLine("Please, write a number!");

                    carAmount = 0;
                }
                else
                {
                    carAmount = Int32.Parse(pCarAmount);
                }

                if (carAmount > 10)
                {
                    Console.WriteLine("Lower than 10 please!");
                    carAmount = 0;
                }
            }

            for (int i = 0; i < carAmount; i++)
            {
                car.passenger        = car.generator.Next(1, 4);
                car.contrabandAmount = car.generator.Next(0, 4);

                if (car.passenger <= 3 && car.contrabandAmount <= 0)
                {
                    car = new CleanCar();
                    //Console.WriteLine("Clean");
                }
                else if (car.passenger <= 4 && car.contrabandAmount >= 1)
                {
                    car = new ContrabandCar();
                    //Console.WriteLine("Contraband");
                }

                //Console.WriteLine(i + " amount of cars where created");
            }

            Console.WriteLine("Which car would you like to examine?");

            Console.ReadLine();
        }
コード例 #2
0
        static void Main(string[] args)
        {
            Random MainGenerator            = new Random();
            List <ContrabandCar> contraband = new List <ContrabandCar>(); //Gör en tom lista där alla ContrabandCars kommer att lagras
            List <CleanCar>      Clean      = new List <CleanCar>();      //Tom lista där clean cars kommer att lagras
            List <Car>           Cars       = new List <Car>();           //Gör en lista där alla instanser av bilarna lagras

            int  answer  = 0;                                             //Gör 1 int där spelarens parsade input lagras
            bool success = false;

            while (success == false)
            {
                Console.Write("Hur många bilar ska skapas? ");
                string inputNum = Console.ReadLine();         //spelares input laras

                success = int.TryParse(inputNum, out answer); //Försöker göra om spelares input till 1 int

                if (success && answer < 1)                    //Om parsen lyckas och svaret är under 1 så får man skriva in svaret igen
                {
                    Console.WriteLine("Försök igen");
                    success = false;
                }
            }

            for (int i = 0; i < answer; i++)                      //Skapar x antal bilar beroende på hur många man valde att generera
            {
                Car Car = new Car();                              //Ny instans
                Cars.Add(Car);                                    //Lägger till Car i listen Cars
            }
            Console.WriteLine("Genererade bilar: " + Cars.Count); //Räknar storleken på cars
            Console.WriteLine("Klicka enter för att få veta hur många av repsketive sort som genererades");
            Console.ReadKey();
            int CleanAmount = MainGenerator.Next(0, answer);             //Randomizar antalet clean amount. Nånting mellan 0 och spelarens input



            for (int i = 0; i < CleanAmount; i++)              //Skapar x antal bilar beroende på hur många man valde att generera
            {
                CleanCar CleanCars = new CleanCar();
                Clean.Add(CleanCars);                                        //Lägger till en CleanCar i listan över CleanCars
            }
            Console.WriteLine("Genererade " + Clean.Count + " Clean bilar"); //Skriver ut hur många clean cars som lades till i den nya listen
            int contrabandAmount = answer - CleanAmount;                     //Gör en ny int för contraband cars som är totala - antalet clean

            for (int i = 0; i < contrabandAmount; i++)
            {
                ContrabandCar contrabandCars = new ContrabandCar(); //Ny ContrabandCar för varje värde som i är mindre än inten contrabandAmont
                contraband.Add(contrabandCars);                     //Lägger till contraband cars i listan
            }
            Console.WriteLine("Genererade " + contraband.Count + " Contraband bilar");

            Console.ReadLine();
        }
コード例 #3
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello Car-Inspector!");
            Console.WriteLine("How many card do you want o inspect?");
            string _temp = Console.ReadLine();

            if (howManyCars > 0)
            {
                if (int.TryParse(_temp, out howManyCars))
                {
                    if (howManyCars == 0)
                    {
                        Console.WriteLine("So no cars today Inspector?");
                        Console.ReadKey();
                        Environment.Exit(); // Quit because of no cars
                    }
                    else
                    {
                        while (howManyCars > 0) //Creates all cars
                        {
                            int _tempCar = generator.Next(1, 3);
                            if (_tempCar == 1) //cerates clean car
                            {
                                string _tempName = howManyCars.ToString();
                                Car    _tempName = new CleanCar();
                                cars.Add(_tempName);
                            }
                            else if (_tempCar == 2) //creates dirty car
                            {
                                string _tempName = howManyCars.ToString();
                                string _tempName = howManyCars.ToString();
                                Car    _tempName = new ContrabandCar();
                                cars.Add(_tempName);
                            }
                            howManyCars--;
                        }
                    }
                }
                else
                {
                    Console.WriteLine("Please imput a number");
                }
            }


            //nomoretime



            Console.ReadKey();
        }
コード例 #4
0
        //jag skapar en metod som ska kolla om passagerkarna i bilen är 4 eller mindre
        public void Carselector()
        {
            CleanCar      CC  = new CleanCar();
            ContrabandCar CBC = new ContrabandCar();

            if (passangers == 4)
            {
                CBC.Contrabandcar();
            }
            else
            {
                CC.Cleancar();
            }
        }
コード例 #5
0
        static void Main(string[] args)
        {
            ContrabandCar CB  = new ContrabandCar();
            Car           Car = new Car();


            while (true)
            {
                Console.Clear();
                Console.WriteLine("Hur många bilar ska skapas?");

                Car.ParseInt();

                Console.ReadKey();

                Console.WriteLine("Vilken bil vill du titta på?");

                Car.Cars();
                Car.Amount();
                Car.Carselector();

                Console.ReadKey();
            }
        }
コード例 #6
0
        static void Main(string[] args)
        {
            Console.WriteLine("Skriv in hur många bilar du vill checka (minst 1)");
            Random        generator = new Random();
            Car           c1        = new Car();
            CleanCar      cleanc1   = new CleanCar();
            ContrabandCar contrac1  = new ContrabandCar();
            string        answer    = Console.ReadLine();
            int           amount    = 0;
            bool          howMany   = int.TryParse(answer, out amount);

            while (!howMany && amount <= 0) //felsökning, ser till att spelaren måste ge ett giltigt svar
            {
                Console.WriteLine("Ogiltigt svar!");
                answer  = Console.ReadLine();
                howMany = int.TryParse(answer, out amount);
            }
            List <int> carlist = new List <int>();         //lista skapad

            carlist.AddRange(Enumerable.Range(1, amount)); //skapar en lista med alla tal mellan 1 till amount
            while (1 > 0)
            {
                Console.WriteLine("Vilken ska du titta på? [1-" + carlist.Count() + "]"); //får inte riktigt count att fungera tror jag skapar listans indexering på ett felaktigt sätt.
                answer = Console.ReadLine();
                int  cars     = 0;
                bool whichCar = int.TryParse(answer, out cars);

                //hann inte att få felsökningen att fungera

                /*while (!whichCar && cars > amount || cars < amount)
                 * {
                 *  Console.WriteLine("Ogiltigt svar!");
                 *  answer = Console.ReadLine();
                 *  whichCar = int.TryParse(answer, out cars);
                 * }*/

                int possibility = generator.Next(1); // 50% chans generator

                if (possibility == 0)                //checkar bilen via chans ifall den blir clean eller contraband. Men klassen kommer ihåg vilken bil du angett
                {
                    contrac1.Examine(cars);
                }
                if (possibility == 1)
                {
                    cleanc1.Examine(cars);
                }
            }
            Console.ReadLine();

            /*List<string> carlist = new List<string>(); //skapas en list för bilarna
             * for (int i = 0; i > amount; i++)
             * {
             *  int tempparameter = generator.Next(1);
             *  if (tempparameter == 0)
             *  {
             *      carlist.Add("cleanc1"); //lägger till så många bilar för varje lista
             *  }
             *  else if (tempparameter == 1)
             *  {
             *      carlist.Add("contrac1"); //lägger till så många bilar för varje lista
             *  }
             * }*/
        }
コード例 #7
0
        static void Main(string[] args)
        {
            int totalContrabandFound  = 0;
            int totalContrabandMissed = 0;


            //Frågar hur många bilar som ska skapas
            int answer = 0;

            while (answer <= 0)
            {
                Console.Clear();
                Console.WriteLine("Hur många bilar ska skapas?");
                bool success = int.TryParse(Console.ReadLine(), out answer);
                if (!success)
                {
                    Console.WriteLine("Ogiltig inmatningsformat, snälla försök igen.");
                }
            }

            //Skapar nya bilar
            List <Car> cars        = new List <Car>();
            Random     random      = new Random();
            int        cleanChance = 70;

            for (int i = 0; i < answer; i++)
            {
                bool isClean = (cleanChance >= random.Next(0, 101)); //om slumpade numret hamnar inom cleanChance blir isClean true.
                //cars.Add(isClean ? new CleanCar(): new ContrabandCar()); det här hade varit snyggt men tyvärr funkar det inte
                Car newCar;
                if (isClean)
                {
                    newCar = new CleanCar();
                }
                else
                {
                    newCar = new ContrabandCar();
                }
                cars.Add(newCar);
            }

            bool allCarsChecked = false;

            while (!allCarsChecked)
            {
                //Välj bil att kolla på
                Console.Clear();
                Console.WriteLine("Vilken bil vill du kolla på?");
                for (int i = 0; i < cars.Count; i++)
                {
                    Console.WriteLine(i + ": " + (!cars[i].alreadyChecked ? "ej " : "") + "undersökt");
                }

                //Kollar om du svarade rätt
                int  carToCheck = -1;
                bool success    = false;
                while (!success)
                {
                    success = int.TryParse(Console.ReadLine(), out carToCheck); //kollar att du skrev en siffra
                    if (carToCheck < 0 || carToCheck >= cars.Count)
                    {
                        success = false;                                             //kollar så att du inte överskred mängden bilar
                    }
                    if (!success)
                    {
                        Console.WriteLine("Snälla svara med bilens siffra.");
                    }
                }

                //Kollar bilen
                if (cars[carToCheck].alreadyChecked)
                {
                    Console.WriteLine("Den där bilen har du redan tittat på!");
                }
                else
                {
                    bool containsContraband = cars[carToCheck].Examine();
                    int  contrabandAmount   = cars[carToCheck].contrabandAmount;
                    if (containsContraband)
                    {
                        totalContrabandFound += contrabandAmount;
                    }
                    else
                    {
                        totalContrabandMissed += contrabandAmount;
                    }                                                                                                                     //Hittade du eller missade stöldgods?
                    Console.WriteLine(containsContraband ? "Du hittade " + contrabandAmount + " stöldgods." : "Den här bilen verkar vara ren.");
                }
                Console.ReadKey(true);
                //kollar om alla bilar har undersökts
                allCarsChecked = true;
                for (int i = 0; i < cars.Count; i++)
                {
                    if (cars[i].alreadyChecked == false)
                    {
                        allCarsChecked = false; break;
                    }                                                                       //bryter sig ur loopen om en bil inte har undersökts ännu
                }
            }
            Console.Clear();
            Console.WriteLine("Du har kollat på alla bilar! Du hittade " + totalContrabandFound + " stöldgods och missade " + totalContrabandMissed + ".");
            Console.ReadLine();
        }