Задание: Описать класс, реализующий десятичный счетчик, который может увеличивать или уменьшать свое значение на единицу в заданном диапазоне. Предусмотреть инициализацию счетчика значениями по умолчанию и произвольными значениями. Счетчик имеет два метода: увеличения и уменьшения, — и свойство, позволяющее получить его текущее состояние. При выходе за границы диапазона выбрасываются исключения. Написать программу, демонстрирующую все разработанные элементы класса.
сама программа:
| Код | using System; namespace App { class Counter { int count; int max; int min; public Counter() { this.count = 0; this.min = 0; this.max = 100; } public Counter(int min_, int max_) { this.min = min_; this.max = max_; Random rnd = new Random(); this.count = rnd.Next(this.min, this.max); } public int Count { get { return this.count; } } public static Counter operator ++(Counter Ob) { if (++Ob.count > Ob.max) throw new Exception("Range error"); return Ob; } public static Counter operator --(Counter Ob) { if (--Ob.count < Ob.min) throw new Exception("Range error"); return Ob; } } class Applic { static void Main() { int min = 0, max = 0; Console.WriteLine("Enter minimum: "); min = int.Parse(Console.ReadLine()); Console.WriteLine("Enter maximum: "); max = int.Parse(Console.ReadLine()); Counter Obj = new Counter(min, max); try { Obj++; Console.WriteLine(Obj.Count); Obj--; Console.WriteLine(Obj.Count); } catch (Exception e) { Console.WriteLine(e.Message); } finally { Console.ReadKey(); } } } }
|
Помогите сделать так чтобы увеличение и уменьшение происходило с помощью методов, а не с помощью операторов. Пробовала заменить на
| Код | public Counter increment() { return new Counter(++this.count); } public Counter decrement() { return new Counter(--this.count); }
|
но вылазеет 2 ошибки. |