/* מחלקה ראשית המשתמשת במחלקה Seller */ using System; public class SellerBonus { public static void Main() { // יצירת עצם מסוג מוכר Seller seller = new Seller("selli"); // קלט ועדכון המכירות double sale; Console.Write("Enter a sale: "); sale = double.Parse(Console.ReadLine()); while (sale > 0.0) { seller.AddSale(sale); Console.Write("Enter a sale, Enter 0 to end: "); sale = double.Parse(Console.ReadLine()); } // חישוב בונוס והצגת פלט double bonus; bonus = seller.CalculateBonus(); Console.WriteLine("The seller bonus is {0}", bonus); double[] sales; sales = seller.GetBonusSales(); // output the sales Console.Write("The bonus Sales are: "); for (int i = 0; i < sales.Length; i++) Console.Write(" {0} ", sales[i]); Console.WriteLine(); } // Main } // class SellerBonus /* המחלקה מוכר */ public class Seller { private double[] bonusSales; private string name; //הפעולה הבונה public Seller(string name) { this.name = name; bonusSales = new double[3]; for (int i = 0; i < bonusSales.Length; i++) bonusSales[i] = 0.0; } //פעולה להוספת מכירה public void AddSale(double sale) { //מציאת המכירה הקטנה ביותר double min = bonusSales[0]; int minIndex = 0; for (int i = 1; i < bonusSales.Length; i++) { if (min > bonusSales[i]) { min = bonusSales[i]; minIndex = i; } } //אם המכירה הנוכחית גדולה ממנה מעדכנים את המערך if (sale > min) bonusSales[minIndex] = sale; } //פעולה המחזירה את הבונוס שהמוכר זכאי לו public double CalculateBonus() { double bonus = 0; for (int i = 0; i < bonusSales.Length; i++) bonus = bonus + bonusSales[i] * 0.1; return bonus; } //פעולה המחזירה את מערך שלוש המכירות הגבוהות של החודש public double[] GetBonusSales() { //העתקת מערך המכירות והחזרתו double[] sales = new double[bonusSales.Length]; for (int i = 0; i < bonusSales.Length; i++) sales[i] = bonusSales[i]; return sales; } } // Seller