Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Threading;
- namespace ConsoleApp2
- {
- class Program
- {
- static void Main(string[] args)
- {
- Aquarium aquarium = new Aquarium();
- aquarium.StartWork();
- }
- }
- class Aquarium
- {
- private List<Fish> _fishes = new List<Fish>();
- private int _maxCountFishes;
- public Aquarium()
- {
- Random random = new Random();
- _maxCountFishes = random.Next(6, 20);
- }
- public void StartWork()
- {
- bool isWorking = true;
- while (isWorking)
- {
- Console.Clear();
- ShowInfo();
- Console.WriteLine("\n\nМеню:\n1.Добавить рыбку\n2.Убрать рыбку\n3.Выход");
- string userInput = Console.ReadLine();
- switch (userInput)
- {
- case "1":
- AddFish();
- break;
- case "2":
- RemoveFish();
- break;
- case "3":
- isWorking = false;
- break;
- default:
- Console.WriteLine("Нет такой команды");
- break;
- }
- foreach (Fish fish in _fishes)
- {
- if (fish.Health > 0)
- fish.ReduceHealth();
- }
- Console.ReadKey();
- }
- }
- private void ShowInfo()
- {
- Console.WriteLine($"Кол-во рыб в аквариуме: {_fishes.Count} || Максимальное вместмиость аквариума: {_maxCountFishes}");
- for (int i = 0; i < _fishes.Count; i++)
- {
- Console.Write($"{i + 1}: ");
- _fishes[i].ShowInfo();
- }
- }
- private void AddFish()
- {
- if (_fishes.Count < _maxCountFishes)
- {
- _fishes.Add(new Fish());
- Console.WriteLine("Рыбка добавлена!");
- }
- else
- {
- Console.WriteLine("Аквариум полн");
- }
- }
- private void RemoveFish()
- {
- Console.Write("Укажите номер рыбы которую нужно убрать: ");
- string userInput = Console.ReadLine();
- int number;
- if (int.TryParse(userInput, out number))
- {
- if (Convert.ToInt32(userInput) <= _fishes.Count && Convert.ToInt32(userInput) > 0)
- {
- _fishes.RemoveAt(Convert.ToInt32(userInput) - 1);
- Console.WriteLine("Рыбка убрана");
- }
- else
- {
- Console.WriteLine("Нет такой рыбки");
- }
- }
- }
- }
- class Fish
- {
- public float Health { get; private set; }
- private bool IsAlive => Health > 0;
- public Fish()
- {
- Random random = new Random();
- Health = random.Next(2, 5);
- }
- public void ShowInfo()
- {
- if (IsAlive)
- {
- Console.WriteLine($"Рыбке осталось жить: {Health} год(а)(лет)");
- }
- else
- {
- Console.WriteLine("Рыбка умерла((");
- }
- }
- public void ReduceHealth()
- {
- Health -= 0.125f;
- }
- }
- }
Add Comment
Please, Sign In to add comment