Предмет: Информатика, автор: mirvodaevgen

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


Aillianna: И все это за 5 баллов? а не мало ли?
Aillianna: да но это не так легко. без опыта может уйти несколько часов

Ответы

Автор ответа: Aillianna
3

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($" => {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 > this.Maximum || value < this.Minimum)

           return;

       this.Value++;

   }

   public void Decrease() {

       var value = this.Value - 1;

       if (value > this.Maximum || value < this.Minimum)

           return;

       this.Value--;

   }

}


Приложения:
Похожие вопросы
Предмет: Математика, автор: vav030210
Предмет: Биология, автор: Killa2288281
Часть 1

1)назовите отличие животных от растений(способность к питанию)

2) назовите предстовителей свободно живущих червей(

3) с чем связано хладнокровность земноводных(

4) какую функцию выполняет сократительная вакуоль инфузории

5) назовите кости гольнии

6) Какое оплодотворение характерно для ланцетника

7) какой отдел мозга способствует координации движения птиц в полете

8) большой круг кровообращения начинается в какой части сердца

9) назовите животных относящихся к отряду приматы

10) какие животные в качестве органов дыхания используют поверхность тела

11) у кого четырехкамерное сердце

12) у каких животных в переднем отделе головного мозга есть изилины

13) личинка какого животного проходит стадию под названием финна

14) у каких животных есть кость под названием киль

15) какие функции выполняет зеленые железы рака

16) назовите признаки говорящие о возможном паразитическом
образе жизни червей

17) как произходило усложнение строение сердца у животных

18) характерные признаки птиц и млекопитающих

19) какая кровеносная система называется незамкнутой

20) чем отличается колония одноклеточных от многоклеточных организмов

21) чем опасны ленточные черви для человека и каковы меры профилактики против за заражение эпидемии червями паразитами
РЕБЯТ ПОЖАЛУЙСТА ))
СРОЧНО ЗАРАНЕЕ СПАСИБО ))))
ПО БРАТСКИ РЕБЯТ