Lektion 11: lösningsförslag
- interface IProduct
- {
- string Name { get; set; }
- double Price { get; set; }
- }
- class Car : IProduct
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Horsepowers { get; set; }
- }
- class Computer : IProduct
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Megabytes { get; set; }
- }
- class Shoe : IProduct
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Size { get; set; }
- }
- static double TotalPrice(IProduct[] products)
- {
- double sum = 0;
- foreach (IProduct p in products)
- {
- sum += p.Price;
- }
- return sum;
- }
- interface IProduct
- {
- string Name { get; set; }
- double Price { get; set; }
- void Enlarge(int amount);
- }
- class Car : IProduct
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Horsepowers { get; set; }
- public void Enlarge(int amount)
- {
- Horsepowers += amount * 20;
- }
- }
- class Computer : IProduct
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Megabytes { get; set; }
- public void Enlarge(int amount)
- {
- Megabytes += amount * 50000;
- }
- }
- class Shoe : IProduct
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Size { get; set; }
- public void Enlarge(int amount)
- {
- Size += amount;
- }
- }
- static double TotalPrice(IProduct[] products)
- {
- double sum = 0;
- foreach (IProduct p in products)
- {
- sum += p.Price;
- }
- return sum;
- }
- static void Supersize(IProduct[] products)
- {
- foreach (IProduct p in products)
- {
- p.Enlarge(2);
- }
- }
- interface IProduct
- {
- string Name { get; set; }
- double Price { get; set; }
- void Enlarge(int amount);
- }
- interface ISummary
- {
- string Summary { get; }
- }
- class Car : IProduct, ISummary
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Horsepowers { get; set; }
- public void Enlarge(int amount)
- {
- Horsepowers += amount * 20;
- }
- public string Summary
- {
- get
- {
- return Name + " has " + Horsepowers + " horsepowers";
- }
- }
- }
- class Computer : IProduct, ISummary
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Megabytes { get; set; }
- public void Enlarge(int amount)
- {
- Megabytes += amount * 50000;
- }
- public string Summary
- {
- get
- {
- return Name + " has " + Megabytes + " MB of disk space";
- }
- }
- }
- class Shoe : IProduct, ISummary
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Size { get; set; }
- public void Enlarge(int amount)
- {
- Size += amount;
- }
- public string Summary
- {
- get
- {
- return Name + "is of size " + Size;
- }
- }
- }
- class Customer : ISummary
- {
- public string Name;
- public int Age;
- public string Summary
- {
- get
- {
- return Name + " is " + Age + " years old";
- }
- }
- }
- static double TotalPrice(IProduct[] products)
- {
- double sum = 0;
- foreach (IProduct p in products)
- {
- sum += p.Price;
- }
- return sum;
- }
- static void Supersize(IProduct[] products)
- {
- foreach (IProduct p in products)
- {
- p.Enlarge(2);
- }
- }
- static void ShowDatabase(ISummary[] entries)
- {
- foreach (ISummary entry in entries)
- {
- Console.WriteLine(entry.Summary);
- }
- }