Untitled

mail@pastecode.io avatar
unknown
plain_text
2 years ago
5.0 kB
1
Indexable
Never
meny bajs = new meny(); //skapar en instans av klassen meny




bajs.displaymeny();

interface IKitchenmach  ///interface
{
    public string Type { get; set; }
    public string Brand { get; set; }
    public bool Working { get; set; }
}


class meny
{

    List<IKitchenmach> redskap = new List<IKitchenmach>()   //lista av objekt (generiska List-klassen som kan skapa en lista)
{
    new köksapparater ("Osthyvel", "IKEA", true ),
    new köksapparater ("Smörkniv", "Mora", true ),
    new köksapparater ("Slickepott", "Duka", true )


};
    //Skapa ett program som:
    //Huvudmeny
    //- Skriver ut en huvudmeny innehållande ett antal val (1. Använd köksapparat 2. Lägg till köksapparat 3. Lista köksapparater 4. Ta bort köksapparat 5. Avsluta). [1]
    //-Låter användaren ange ett val i huvudmenyn och läser in valet. [2]


    //Val 1.Använd köksapparat
    //- Skriver ut en undermeny. [3]
    //-Låter användaren ange ett val i undermenyn för att välja köksapparat och läser in valet. [4]
    //-Skriver ut ett meddelande om att köksapparaten är trasig om den är trasig. Annars ska ett meddelande skrivas ut om att köksapparaten används. [5]
    //-Går tillbaka till huvudmenyn. [6]

    public void displaymeny()     //en metod för att skriva ut huvudmenyn
    {

        Console.WriteLine("======Amazing Kitchen======");
        Console.WriteLine("1. Använd köksapparat");
        Console.WriteLine("2. Lägg till köksapparat");
        Console.WriteLine("3. Lista köksapparater");
        Console.WriteLine("4. Ta bort köksapparater");
        Console.WriteLine("5. Avsluta");


        int option = int.Parse(Console.ReadLine());


        switch (option)

        {
            case 1:
                choosetool();
                break;
            case 2:
                // code block
                break;
            case 3:
                break;
            case 4:
                break;
            case 5:
                break;
            default:
                // code block
                break;


                //    string köksredskap = Console.ReadLine();

                //    if (option == 1)
                //    {
                //        Console.WriteLine("Osthyveln används och är på osten");
                //    }
                //    else if (option == 2)
                //    {
                //        Console.WriteLine("Smörkniven gick sönder igår, använd en vanlig kniv");
                //    }
                //    else if (option == 3)
                //    {
                //        Console.WriteLine("Slickepotten används men du kan ändå slicka på den om ingen ser");
                //    }
                //}

        }

    }

    public void choosetool() //metod
    {
        Console.WriteLine("Vilken köks-'apparat' vill du använda");
        int order = 1;
        foreach (var tool in redskap)

        {
            Console.WriteLine(order + ". " + tool.Type);
            for (int i = 0; i < order; i++) ;

        }
        int chose = int.Parse(Console.ReadLine());
        var gurka = redskap[chose - 1];  //
        Console.WriteLine(gurka.Type);
    }
}


class köksapparater : IKitchenmach  //ny klass som ärver av interfacet - 
{
    public string Type { get; set; }   //properties
    public string Brand { get; set; }
    public bool Working { get; set; }
    public köksapparater(string type, string brand, bool working) //"base till underklasserna" - konstruktorn (en metod som körs bara om objektet ska skapas)
    {
        Type = type;     //sparar till värdet i property:n 
        Brand = brand;
        Working = working;
    }

    public class Osthyvel : köksapparater
    {
        public Osthyvel(string type, string brand, bool working) : base(type, brand, working) //  konstruktor i klassen
                                                                                              //anropar base
        {
            //    this.Type = type; 
            //    this.Brand = brand;           Värde är redan sparat i anropet till base
            //    this.Working = working;
        }
    }

    public class Smörkniv : köksapparater
    {
        public Smörkniv(string type, string brand, bool working) : base(type, brand, working) //  konstruktor i klassen
        {
            //this.Type = type;
            //this.Brand = brand;
            //this.Working = working;
        }

        public class Slickepott : köksapparater
        {
            public Slickepott(string type, string brand, bool working) : base(type, brand, working) //  konstruktor i klassen 
            {
                //this.Type = type;
                //this.Brand = brand;
                //this.Working = working;
            }


        }


    }

}