مشخصات مقاله
-
3240
-
0.0
-
5419
-
0
-
0
خروجی متد یا پارامتر ارسالی از نوع کلاس (class as parameter type)
همانطور که در مقاله قبلی گفتیم، در سی شارپ یک کلاس در واقع یک گونه داده ای است. بنابراین تمامی ویژگی های رفتاری با گونه های داده ای در برنامه نویسی سی شارپ قابل اعمال روی کلاس های تعریف شده نیز هست. در این بخش از آموزش سی شارپ به بخش دیگری از این ویژگی ها خواهیم پرداخت.
- برای بازگرداندن کلاس یا ارسال آن به عنوان آرگومان، فایل OrderProcessing.cs را به صورت زیر اصلاح کنید.
using System;
namespace ElectronicStore1
{
public class SaleItem
{
public double DiscountAmount { get; set; }
public double NetPrice { get; set; }
public int Quantity { get; set; }
public double SaleTotal { get; set; }
public int ItemNumber { get; set; }
public string SetMake { get; set; }
public char Category { get; set; }
public string Model { get; set; }
public double UnitPrice { get; set; }
public double GetDiscountRate()
{
Console.Write("Discount Applied (Enter 0 to 100, 0 if no discount): ");
double discount = double.Parse(Console.ReadLine());
return discount;
}
public int GetQuantity()
{
Console.Write("Enter Quantity: ");
int q = int.Parse(Console.ReadLine());
return q;
}
public SaleItem Create()
{
int itemNumber;
char category;
string make;
string model;
//double discount;
double price;
SaleItem saleItem = new SaleItem();
Console.Write("Enter the Item #: ");
itemNumber = int.Parse(Console.ReadLine());
Console.WriteLine("Category");
Console.WriteLine("A - Audio Cables");
Console.WriteLine("B - Instructional and Tutorials (Books)");
Console.WriteLine("C - Cell Phones and Accessories");
Console.WriteLine("D - Bags and Cases");
Console.WriteLine("E - Headphones");
Console.WriteLine("F - Instructional and Tutorials (VHS & DVD)");
Console.WriteLine("G - Digital Cameras");
Console.WriteLine("H - Cables and Connectors");
Console.WriteLine("I - PDAs and Accessories");
Console.WriteLine("J - Telephones and Accessories");
Console.WriteLine("K - Surge Protector");
Console.WriteLine("L - TVs and Videos");
Console.WriteLine("U - Unknown");
Console.Write("Your Choice? ");
category = char.Parse(Console.ReadLine());
Console.Write("Make: ");
make = Console.ReadLine();
Console.Write("Model: ");
model = Console.ReadLine();
Console.Write("Unit Price: ");
price = double.Parse(Console.ReadLine());
saleItem.ItemNumber = itemNumber;
saleItem.Category = category;
saleItem.SetMake = make;
saleItem.Model = model;
saleItem.UnitPrice = price;
return saleItem;
}
public void ShowSaleItem(SaleItem item)
{
double discountRate = GetDiscountRate();
int quantity = GetQuantity();
DiscountAmount = item.UnitPrice * discountRate / 100;
NetPrice = item.UnitPrice - DiscountAmount;
SaleTotal = NetPrice * quantity;
Console.WriteLine("\nStore Item Description");
Console.WriteLine("Item Number: {0}", item.ItemNumber);
Console.WriteLine("Category: {0}", item.Category);
Console.WriteLine("Make {0}", item.SetMake);
Console.WriteLine("Model: {0}", item.Model);
Console.WriteLine("Unit Price: {0:C}", item.UnitPrice);
Console.WriteLine("Discount Rate: {0:P}", discountRate / 100);
Console.WriteLine("Discount Amount: {0:C}", DiscountAmount);
Console.WriteLine("Price/Item: {0:C}", NetPrice);
Console.WriteLine("Quantity: {0}", quantity);
Console.WriteLine("Sale Total: {0:C}", SaleTotal);
}
}
public class OrderProcessing
{
public static int Main()
{
SaleItem item = new SaleItem();
SaleItem sale = new SaleItem();
string strTitle1 = "=-= Nearson Electonics =-=\n";
string strTitle2 = "******* Store Items ******";
Console.Title = "Electronic Super Store";
Console.WriteLine(strTitle1);
Console.WriteLine(strTitle2);
Console.Clear();
item = sale.Create();
sale.ShowSaleItem(item);
System.Console.ReadKey();
return 0;
}
}
}
- برنامه را اجرا کنید
=-= Nearson Electonics =-= ******* Store Items ****** Enter the Item #: 927374 Category A - Audio Cables B - Instructional and Tutorials (Books) C - Cell Phones and Accessories D - Bags and Cases E - Headphones F - Instructional and Tutorials (VHS & DVD) G - Digital Cameras H - Cables and Connectors I - PDAs and Accessories J - Telephones and Accessories K - Surge Protector L - TVs and Videos U - Unknown Your Choice? L Make: NEC Model: VT48 Video Projector Unit Price: 705.95 Discount Applied (Enter 0 to 100، 0 if no discount): 15 Enter Quantity: 1
- کلید enter را بزنید
Store Item Description Item Number: 927374 Category: L Make NEC Model: VT48 Video Projector Unit Price: $705.95 Discount Rate: 15.00 % Discount Amount: $105.89 Price/Item: $600.06 Quantity: 1 Sale Total: $600.06
1394/07/27
5419
3240
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com