IMG-LOGO
Trang Chủ C Sharp Bài tập - Chương trình quản lý Mèo C# (C Sharp) | Chương trình quản lý Cat C# (C Sharp)
×

Bài Tập

Xây dựng dự án Hello World trong C# - C Sharp Viết chương trình ax + b = 0 bằng C#, C Sharp Nhập và hiển thị thông tin sinh viên - Console trong C# In dãy số chẵn & lẻ từ mảng số nguyên - Lập trình C# - Loop trong C# Tìm dãy số nguyên tố - Lập trình C# - Loop trong C# In dãy Fibonacci trong C# - Tìm dãy số Fibonacci - Lập trình C# - Loop trong C# Hiển thị hình tam giác - Lập trình C# - Loop trong C# Viêt chương trình cho FlowChart - Lập trình C# - Tìm hiểu if else trong C# Giải phương trình bậc 2 - Lập Trình C# - Mệnh đề điều kiên if else trong # Tính tổng số chắc & Tổng số lẻ trong chuỗi - Lập Trình C# - Array Trong C# Chương trình quản lý công nhân - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP Chương trình nhập xuất dữ liệu điểm thi - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP Chương trình quản lý sản phẩm - Lập Trình C# - Lập Trình C Sharp - Làm quen OOP Chương trình quản lý sách - Develop Book Project - Lập Trình C# - OOP trong C# - C Sharp Chương trình quản lý khách sạn - Develop Hotel Project - Lập Trình C# - Lập Trình C Sharp 1000 Bài tập lập trình C# - Lập trình C# - Lập Trình C Sharp Chương trình quản lý sản phẩm - Product - Lập Trình C# - Lập Trình C Sharp Examination & Test - Lập trình C# - Lập trình C Sharp Viết chương trình quản lý sinh viên + delegate & event trong C# - Lập Trình C# - Lập Trình C Sharp Ôn tập OOP - Table - Trong C# - Lập Trình C# - Lập Trình C Sharp Ôn tập OOP - Table - Trong C# - Lập Trình C# - Lập Trình C Sharp Chương trình quản lý sinh viên C# + Import/Export JSON + File - Lập Trình C# - Lập Trình C Sharp Chường trình quản lý sở thú - Lập trình C# - Lập trình C Sharp Bài tập - Xây dựng chương trình quản lý sức khoẻ - Lập trình C# Bài tập - Bài tập - Viết chương trình quản lý tiêm chủng Vacxin COVID-19 - Lập trình C Sharp nâng cao. Tools Import/Export JSON into Database C# - Nhập xuất JSON File vào CSDL C# - Quản lý sinh viên C# Chương trình quản lý sách C# - Book project C# Bài tập C Sharp - Chương trình quản lý cán bộ C# - C Sharp Bài tập - Chương trình quản lý Mèo C# (C Sharp) | Chương trình quản lý Cat C# (C Sharp) Bài tập - Quản lý điểm thi Aptech bằng C# - Lập trình C Sharp Bài Tập - Quản lý nhà - Lập trình C# | C Sharp

Examination & Test

[Assignment] Bài tập ôn luyên tổng quát C# - Lập Trình C# - Lập Trình C Sharp [Examination] C# - Chương trình quản lý đội thi TechWiz toàn cầu Apptech Ấn Độ - C# [Examination] Kiểm tra 30 phút - Chương trình quản lý thiết bị phòng lab cho trường Aptech Việt Nam - Lập trình C# - Khoá học lập trình C Sharp




Bài tập - Chương trình quản lý Mèo C# (C Sharp) | Chương trình quản lý Cat C# (C Sharp)

by GokiSoft.com - 09:52 15/10/2021 1,345 Lượt Xem

Hãy xây dựng một giao diện ICat nằm trong namespace cat.exam gồm có phương thức sau:

-          public void nhap();

-          public void hienthi();

 

+ Xây dựng lớp CatDetail nằm trong namespace cat.exam  và kế thừa giao diện Cat trên rồi có thêm các thuộc tính:

-          String loai;

-          String mau (Chú ý : Màu nhập vào phải nằm trong ColorManager)

-          String noisong;

 

Cài đặt các Constructor, các phương thức set/get cho các thuộc tính của lớp và Override các phương thức trong giao diện ICat.

+ Xây dựng lớp ColorManager -> quản lý màu của Mèo đặt trong namespace cat.color

- List<string> colorList -> quản lý danh sach màu của mèo.

- nhập và hiển thị mã màu trong lớp này. 

+ Cài đặt 1 lớp ManagerCat nằm trong namespace cat.manager

- Khai báo thuộc tính catList kiểu dữ liệu là List -> được sử dụng để quản lý danh sách mèo nhập vào.

+ Cài đặt 1 lớp UsingManagerCat nằm trong namespace cat có menu chương trình sau:

           0.   Nhập danh sách mã màu

1.      Nhập thông tin của n con mèo

2.      Hiển thị thông tin

3.      Sắp xếp danh sách theo mau

4.      Tìm kiếm thông tin theo loai

5.    Sắp xếp danh sách màu theo bảng màu trong lớp ColorManager

6.      Thoát.

Nhiệm vụ:

Trong lớp UsingManagerCat phải khai báo 1 đối tượng của lớp ManagerCat và viết hàm để nhập vào thông tin của n con mèo.

Các nhiệm vụ: Hiển thị, sắp xếp, tìm kiếm thực hiện trên danh sách thông qua đối tượng của lớp ManagerCat. 

Bình luận



Chia sẻ từ lớp học

Hoàng Thiện Thanh [community,AAHN-C2009G]

Ngày viết: 19:00 13/10/2021


#Utility.cs


using System;
using System.Text.RegularExpressions;

namespace CatManager.Utils
{
    public class Utility
    {
        public static int ReadInt()
        {
            string str = Console.ReadLine();
            bool check()
            {
                try { int.Parse(str); } catch (Exception) { return false; }
                return true;
            }
            while (!check())
            {
                Console.WriteLine("Cannot parse input like a floor numeric value");
                str = Console.ReadLine();
            }
            return int.Parse(str);
        }
        public static DateTime ReadDate()
        {
            string str = Console.ReadLine();
            DateTime date = new DateTime();
            bool check()
            {
                int ERR = 0;
                try { date = DateTime.Parse(str); } catch (Exception) { ERR++; }
                try { if (ERR == 1) date = Convert.ToDateTime(str); } catch (Exception) { ERR++; }
                if (ERR == 2)
                {
                    return false;
                }
                return true;
            }
            while (!check())
            {
                Console.WriteLine("Cannot read DateTime from input");
                str = Console.ReadLine();
            }
            return date;
        }
        public static string ReadLetters()
        {
            string str = Console.ReadLine();
            while (!Regex.Match(str, "^([a-zA-Z]+|[a-zA-Z]+\\s[a-zA-Z]+)*$").Success)
            {
                Console.WriteLine("Input does not only contain letters");
                str = Console.ReadLine();
            }
            return str;
        }
    }
}


#Program.cs



using CatManager.Managers;
using CatManager.Models;
using CatManager.Utils;
using System;

namespace CatManager
{
    public class Program
    {
        static readonly ColorManager c = new ColorManager();
        static readonly ManagerCat m = new ManagerCat();

        static void ShowMenu()
        {
            Console.WriteLine("0. List all colors\n" +
                "1. Input Cats\n" +
                "2. Display Cats\n" +
                "3. Sort by Colors\n" +
                "4. Find by Type\n" +
                "5. Sort Colors in Color list\n" +
                "6. Exit\n");
        }
        static void ListMenu()
        {
            int choose;
            do
            {
                ShowMenu();
                Console.WriteLine("Decide an input");
                choose = Utility.ReadInt();
                switch (choose)
                {
                    case 0:
                        InputColor();
                        break;
                    case 1:
                        InputCat();
                        break;
                    case 2:
                        Display();
                        break;
                    case 3:
                        SortByColor();
                        break;
                    case 4:
                        FindByType();
                        break;
                    case 5:
                        SortByColorFromColorManager();
                        break;
                    case 6:
                        Console.WriteLine("Exits");
                        return;
                    default:
                        Console.WriteLine("Value must be 1->6");
                        break;
                }

            } while (choose != 6);
        }

        private static void SortByColorFromColorManager()
        {
            m.CatList.Sort((a, b) => b.CompareTo(a));
            foreach (Cat c in m.CatList)
            {
                c.Display();
            }
        }

        private static void SortByColor()
        {

            m.CatList.Sort((a, b) => b.CompareTo(a));
            foreach (Cat c in m.CatList)
            {
                c.Display();
            }
        }

        private static void FindByType()
        {
            Console.WriteLine("Find Cats by their types:");
            string Find = Console.ReadLine();
            int Count = 0;
            foreach (Cat c in m.CatList)
            {
                if (c.Type.Equals(Find))
                {
                    c.Display();
                    Count++;
                }
            }
            if (Count == 0)
            {
                Console.WriteLine("No result found");
            }
        }

        private static void Display()
        {
            m.Display();
        }

        private static void InputCat()
        {
            if (ColorManager.ColorList.Count == 0)
            {
                return;
            }            
            m.Input();
        }

        private static void InputColor()
        {
            c.Input();
        }
        static void Main(string[] args)
        {
            ListMenu();
        }
    }
}


#ICat.cs


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CatManager.Interfaces
{
    interface ICat
    {
        public void Input();
        public void Display();
    }
}


#CatManager.cs


using CatManager.Models;
using CatManager.Utils;
using System;
using System.Collections.Generic;

namespace CatManager.Managers
{
    class ManagerCat
    {
        public List<Cat> CatList { get; set; }
        public ManagerCat()
        {
            CatList = new List<Cat>();
        }
        public void Input()
        {
            Console.WriteLine("Input the amount of cats to be added:");
            int N = Utility.ReadInt();
            for (int i = 0; i < N; i++)
            {
                Console.WriteLine("Cat[" + (i + 1) + "]");
                Cat c = new Cat();
                c.Input();
                CatList.Add(c);
            }

        }
        public void Display()
        {
            foreach (Cat c in CatList)
            {
                c.Display();
            }
        }
    }
}


#ColorManager.cs


using CatManager.Utils;
using System;
using System.Collections.Generic;

namespace CatManager.Managers
{
    public class ColorManager
    {
        public static List<string> ColorList { get; set; }
        public ColorManager()
        {
            ColorList = new List<string>();
        }
        public ColorManager(List<string> colorlist)
        {
            ColorList = colorlist;
        }
        public void Input()
        {
            Console.WriteLine("Input the amount of colors to be added:");
            int N = Utility.ReadInt();
            for (int i = 0; i < N; i++)
            {
                Console.WriteLine("Enter Color "+ (i + 1) + ":");
                string C = Console.ReadLine();
                ColorList.Add(C);
            }
        }
        public void Display()
        {
            string print = "";
            Console.WriteLine("Color :");
            foreach (string c in ColorList)
            {
                print += c + " , ";
            }
            print = print.Remove(print.Length - 1);
            Console.Write(print + ".");
        }
    }

}



#Cat.cs


using CatManager.Interfaces;
using CatManager.Managers;
using CatManager.Utils;
using System;

namespace CatManager.Models
{
    class Cat : ICat
    {
        public string Type { get; set; }
        private string color;
        public string Color
        {
            get
            {
                return color;
            }
            set
            {
                while (!ColorManager.ColorList.Contains(value))
                {
                    Console.WriteLine("No matching color found");
                    value = Console.ReadLine();
                }
                color = value;
            }
        }
        public string Address { get; set; }
        public Cat()
        {

        }
        public Cat(string Type, string Color, string Address)
        {
            this.Type = Type;
            this.Color = Color;
            this.Address = Address;
        }
        public void Display()
        {
            Console.WriteLine("Type :{0}\nColor: {1}\nAddress :{2}", Type, Color, Address);
        }

        public void Input()
        {
            Console.WriteLine("Enter Type :");
            Type = Console.ReadLine();
            Console.WriteLine("Enter Color :");
            Color = Utility.ReadLetters();
            Console.WriteLine("Enter Address :");
            Address = Console.ReadLine();
        }

        public int CompareTo(Cat other)
        {
            if (Color.CompareTo(other.Color) != 0)
            {
                return Color.CompareTo(other.Color);
            }
            else
            {
                return 0;
            }
        }
    }
}



Phân Loại Bài Viết

Đã sao chép!!!