C Обрисовать класс, реализующий счетчик, который может наращивать либо убавлять свое

C Описать класс, реализующий счетчик, который может наращивать либо убавлять свое значение на единицу. Предусмотрите инициализацию счетчика значениями по умолчанию (создать конструктор без параметров) и случайными значениями. Счетчик имеет два метода: увеличения и уменьшения, - и свойство, дозволяющее получить его текущее состояние. По мимо этого у счетчика есть диапазон, в котором он может наращивать или убавлять значения. Например, если диапазон от 0 до 10, то стрелка счетчика либо теперешнее состояние счетчика будет от 0 до 10 (например, 5). Если стрелка счетчика будет на значении 10, а мы вызовем способ роста на 1, то ничего не произойдет. Стрелка так же остается на значении 10. Напишите программу, демонстрирующую все разработанные элементы класса.

Задать свой вопрос
Владислав Чевычепаев
И все это за 5 баллов? а не малюсенько ли?
Эвелина Ковчур
да но это не так просто. без опыта может уйти несколько часов
1 ответ

using System;

internal class Program

   private static void Main()

       Console.WriteLine("Введите минимум для счетчика");

       var min = int.Parse(Console.ReadLine() ?? throw new InvalidOperationException());

       Console.WriteLine("Введите максимум для счетчика");

       var max = int.Parse(Console.ReadLine() ?? throw new InvalidOperationException());

       Console.WriteLine("Введите значение для счетчика");

       var v = int.Parse(Console.ReadLine() ?? throw new InvalidOperationException());

       var counter = new Counter(max, min, v);

       Console.WriteLine("Введите + для повышение и - для убавления, иное для выхода");

       do

           var c = Console.ReadKey();

           if (c.KeyChar == '+') counter.Increase();

           else if (c.KeyChar == '-') counter.Decrease();

           else break;

           Console.WriteLine(" =gt; counter.Value");

        while (true);

       Console.ReadKey();

   

public class Counter

   public readonly int Maximum;

   public readonly int Minimum;

   public int Value private set; get;

   public Counter(int maximum, int minimum, int counter)

       this.Maximum = maximum;

       this.Minimum = minimum;

       counter = Math.Min(this.Maximum, counter);

       counter = Math.Max(this.Minimum, counter);

       this.Value = counter;

   

   private Counter()

       this.Maximum = 10;

       this.Minimum = 0;

       this.Value = 5;

   

   public void Increase()

       var value = this.Value + 1;

       if (value gt; this.Maximum value lt; this.Minimum)

           return;

       this.Value++;

   

   public void Decrease()

       var value = this.Value - 1;

       if (value gt; this.Maximum value lt; this.Minimum)

           return;

       this.Value--;

   


, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт