2016-10-14 19 views
0

私はC#を勉強しており、食料品プログラムを作成するよう求められています。私は立ち往生していて、ネット上で何かを見つけることができないようです。私はNameとPriceを含むプロパティを持つ食料雑貨品目クラスを作成しました。私はまたquantityItemのサブクラスを作成しました。私は今、価格を見つけ、価格を計算し、10%のGSTを追加する方法を作成する必要があります。これを行う方法のアイデア。 これは私がこれまで持っているものである - 任意の助けをいただければ幸いです:提案コードのC#検索コスト、アイテムのコストを計算し、10%のGSTを含める

namespace Groceries1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      groceryItem mygroceryItem = new groceryItem(); 
      mygroceryItem.play(); 
      purchasedItem mypurchasedItem = new purchasedItem(); 
     } 
     class groceryItem 
     { 
      private string myName = 0; 
      private int myPrice = 0; 

      public string Name 
      { 
       get 
       { 
        return myName; 
       } 
       set 
       { 
        myName = value; 
       } 
      } 
      public int Price 
      { 
       get 
       { 
        return myPrice; 
       } 
       set 
       { 
        myPrice = value; 
       } 
      } 
     } 
     class purchasedItem 
     { 
      private int myquantity = 0; 

       public int quantity 
       { 
       get 
       { 
        return myquantity; 
       } 
       set 
       { 
        myquantity = Price*quantity*1.1; 
       } 
      } 
     } 
    } 
} 

答えて

0

あなたはこれを試すことができ、

using System; 
using System.Collections.Generic; 

namespace Groceries 
{ 
    public class Program 
    { 
     public static void Main(string[] args) 
     { 
      FreshGrocery freshGrocery = new FreshGrocery(); 
      freshGrocery.Name = "Fresh grocery"; 
      freshGrocery.Price = 30; 
      freshGrocery.Weight = 0.5; 

      Grocery grocery = new Grocery(); 
      grocery.Name = "Grocery"; 
      grocery.Price = 50; 
      grocery.Quantity = 2; 

      ShoppingCart cart = new ShoppingCart(); 
      cart.Orders = new List<GroceryItem>(); 
      cart.Orders.Add(freshGrocery); 
      cart.Orders.Add(grocery); 

      double price = cart.Calculate(); 
      Console.WriteLine("Price: {0}", price); 
     } 
    } 

    abstract class GroceryItem 
    { 
     private string name; 
     private double price = 0; 

     public string Name 
     { 
      get 
      { 
       return name; 
      } 
      set 
      { 
       name = value; 
      } 
     } 

     public double Price 
     { 
      get 
      { 
       return price; 
      } 
      set 
      { 
       price = value; 
      } 
     } 

     public abstract double Calculate(); 
    }  

    class FreshGrocery: GroceryItem 
    { 
     private double weight = 0; 

     public double Weight 
     { 
      get 
      { 
       return weight; 
      } 
      set 
      { 
       weight = value; 
      } 
     } 

     public override double Calculate() { 
      return this.Price * this.Weight; 
     } 
    }  

    class Grocery: GroceryItem 
    { 
     private int quantity = 0; 
     private double gst = 10; // In Percentage 

     public int Quantity 
     { 
      get 
      { 
       return quantity; 
      } 
      set 
      { 
       quantity = value; 
      } 
     } 

     public override double Calculate() { 
      double calculatedPrice = this.Price * this.Quantity; 

      // VAT 
      if(calculatedPrice > 0) 
      { 
       calculatedPrice += calculatedPrice * (gst/100); 
      } 

      return calculatedPrice; 
     } 
    } 

    class ShoppingCart 
    { 
     private List<GroceryItem> orders; 

     public List<GroceryItem> Orders 
     { 
      get 
      { 
       return orders; 
      } 
      set 
      { 
       orders = value; 
      } 
     } 

     public double Calculate() 
     { 
      double price = 0; 
      if(this.Orders != null) 
      { 

       foreach(GroceryItem order in this.Orders) 
       { 
        price += order.Calculate(); 
       } 

      } 
      return price; 

     } 
    } 
} 
+0

こんにちはアルナ、感謝。私はそれを試して、私はコードでエラーが発生している – McKimmie79

+0

あなたは私にエラーが何であるか教えてもらえますか?私はただここで直接コーディングし、それを実行しませんでした。 – Aruna

+0

1.暗黙的に 'double'型を 'int'に変換することはできません。明示的な変換が存在します(キャストがありませんか?)。 2.暗黙的に 'int'型を 'string'に変換することはできません。 'List には' Calculate 'の定義が含まれておらず、拡張メソッドではありません' Calculate '型の最初の引数を受け取ります。' Program.PurchasedItem> List 'が見つかりました(usingディレクティブまたはアセンブリ参照がありませんか?)。これらのエラーについてのあなたの考えを聞きたいです。歓声 – McKimmie79

関連する問題