IMG-LOGO
×

Giáo Trình Học

Khoá học lập trình C# (.NET Core)

Kiến Thức Căn Bản - Khai Báo Biến, Toán Tử, Mệnh Đề Điều Kiện, Lặp

[Video] Giới thiệu về ngôn ngữ lập trình C# & .NET Framework + Khai báo biến trong C# [Video] Hướng dẫn tìm hiểu biến + toán tử trong lập trình C# [Video] Hướng dẫn tìm hiểu mệnh đề điều kiện if - else - switch trong C# [Video] Tìm dãy số nguyên tố - Lập trình C# - Loop trong C# [Video] In dãy số chẵn & lẻ từ mảng số nguyên - Lập trình C# - Loop trong C#




Trang Chủ C Sharp [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

[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

by GokiSoft.com - 15:29 16/10/2021 1,779 Lượt Xem

Bạn được yêu cầu thiết kế chương trình quản lý thiết bị phòng lab cho trường Aptech như sau.

Yêu cầu thiết kế các class object

1. Device -> Gồm các thuộc tính tên thiết bị, mã thiết bị, ngày mua

2. PC kế thừa từ Device

3. Laptop kế thừa từ Device

Viết getter/setter, hàm tạo và phương thức Nhập và Xem thông tin.

Tạo 1 lớp Test viết yêu cầu sau:

Tao 1 function đặt tên là static int CountDevice(List<Device> deviceList, string type) -> Trả về số thiết bị cần xem (type nhận các giá trị: PC -> trả về số PC trong mảng deviceList, Laptop -> trả về số Laptop trong mảng deviceList)

Trong phương thức Main -> Tạo ngẫu nhiên N thiết bị PC & Laptop yêu cầu sử dụng phương thức CountDevice trên để đếm số PC và Laptop.

Bình luận



Chia sẻ từ lớp học

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

Ngày viết: 13:54 18/10/2021


#Program.cs


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

namespace LabManager
{
    public class Program
    {
        public static List<Device> DeviceList = new List<Device>();
        public static List<string> dvc = new List<string> { "PC", "Laptop" };
        static void ShowMenu()
        {
            Console.WriteLine("1. Input new devices\n" +
                "2. Count devices by type\n" +
                "3. Display all devices\n" +
                "4. Exit\n");
        }
        static void Input()
        {
            Console.WriteLine("Enter number of devices:");
            int N = Utility.ReadInt();
            for (int i = 0; i < N; i++)
            {
                Console.WriteLine("Choose type of Devices (Laptop, PC)");
                string str = Console.ReadLine();
                
                while (!str.Equals(dvc))
                {
                    Console.WriteLine("Device do not match the following types");
                    str = Console.ReadLine();
                }
                switch (str)
                {
                    case "Laptop":
                        Device d = new Laptop();
                        d.Input();
                        DeviceList.Add(d);
                        break;
                    case "PC":
                        d = new PC();
                        d.Input();
                        DeviceList.Add(d);
                        break;
                }
            }
        }
        public static int CountDevices(List<Device> DeviceList, string Type)
        {
            int count = 0;
            foreach(Device d in DeviceList)
            {
                if (Type.Equals(d.Type()))
                {
                    count++;
                }
            }
            return count;
        }
        static void Display()
        {
            foreach(Device d in DeviceList)
            {
                d.Display();
            }
        }
        static void Main(string[] args)
        {
            int choose;
            do
            {
                ShowMenu();
                choose = Utility.ReadInt();
                switch (choose)
                {
                    case 1:
                        Input();
                        break;
                    case 2:
                        string Type = Console.ReadLine();
                        while (!Type.Equals(dvc))
                        {
                            Console.WriteLine("Type does not match");
                            Type = Console.ReadLine();
                        }
                        int count = CountDevices(DeviceList, Type);
                        Console.WriteLine("Number of {0} devices is {1}", Type, count);
                        break;
                    case 3:
                        Display();
                        break;
                    case 4:
                        Console.WriteLine("Exited");
                        break;
                    default:
                        Console.WriteLine("Wrong input");
                        break;
                }
            } while (choose != 4);

        }
    }
}


#Device.cs


using LabManager.Utils;
using System;
using System.Collections.Generic;
using System.Text;

namespace LabManager.Models
{
    public abstract class Device
    {
        public string DeviceName { get; set; }
        public string DeviceCode { get; set; }
        public DateTime DateBought { get; set; }
        public abstract string Type();
        public Device()
        {

        }
        public Device(string DeviceName, string DeviceCode, DateTime DateBought)
        {
            this.DeviceName = DeviceName;
            this.DeviceCode = DeviceCode;
            this.DateBought = DateBought;
        }
        public Device(string DeviceName, string DeviceCode, string DateBought)
        {
            this.DeviceName = DeviceName;
            this.DeviceCode = DeviceCode;
            this.DateBought = DateTime.Parse(DateBought);
        }
        public virtual void Input()
        {
            Console.WriteLine("Input Device Name: ");
            DeviceName = Console.ReadLine();

            Console.WriteLine("Input Device Code: ");
            DeviceCode = Console.ReadLine();

            Console.WriteLine("Input Purchased Date: ");
            DateBought = Utility.ReadDate();
        }

        public virtual void Display()
        {
            Console.WriteLine("Device Name: " + DeviceName + "\nDevice Code: " + DeviceCode + "\nDate Bought: " + DateBought.ToString("dd/MM/yyyy"));
        }
    }
}


#Laptop.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace LabManager.Models
{
    public class Laptop : Device
    {
        public Laptop()
        {

        }
        public Laptop(string DeviceName, string DeviceCode, DateTime BoughtDate) : base(DeviceName, DeviceCode, BoughtDate)
        {

        }
        public override string Type()
        {
            return "Laptop";
        }
    }
}


#PC.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace LabManager.Models
{
    public class PC : Device
    {
        public PC()
        {

        }
        public PC(string DeviceName, string DeviceCode, DateTime BoughtDate) : base(DeviceName, DeviceCode, BoughtDate)
        {

        }
        public override string Type()
        {
            return "PC";
        }
    }
}


#Utility.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace LabManager.Utils
{
    public class Utility
    {
        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("Date time is a wrong input");
                str = Console.ReadLine();
            }
            return date;
        }
        public static int ReadInt()
        {
            string str = Console.ReadLine();
            bool check()
            {
                try { int.Parse(str); } catch (Exception) { return false; }
                return true;
            }
            
            while (!check())
            {
                Console.WriteLine("Input cannot be numeric parsed");
                str = Console.ReadLine();
            }
            return int.Parse(str);
        }
    }
}


Nguyễn Việt Hoàng [community,AAHN-C2009G]

Ngày viết: 22:46 17/10/2021


#Device.cs


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

namespace Ss12.B2
{
    abstract class Device
    {
        public string DeviceName { get; set; }
        public string RollDevice { get; set; }
        public DateTime Day { get; set; }
        public Device()
        {

        }
        public Device(string devicename, string rolldevice, DateTime day)
        {
            this.DeviceName = devicename;
            this.RollDevice = rolldevice;
            this.Day = day;
        }
        public abstract string Type();
    
        public void Input()
        {
            Console.WriteLine("Enter Device Name :");
            DeviceName = Console.ReadLine();
            Console.WriteLine("Enter RollNo Device :");
            RollDevice = Console.ReadLine();
            Console.WriteLine("Enter Day :");
            Day = Ultility.ConvertStringToDateTime(Console.ReadLine());
        }
        public void Display()
        {
            Console.WriteLine("Device Name :{0}, RollNo Device :{1}, Day :{2}", DeviceName, RollDevice, Day);
        }
    }
}


#Laptop.cs


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

namespace Ss12.B2
{
    class Laptop : Device
    {
        public Laptop()
        {

        }
        public void Input()
        {
            base.Input();
        }
        public void Display()
        {
            base.Display();
        }

        public override string Type()
        {
            return "Laptop";
        }
    }
}


#Mainss.cs


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

namespace Ss12.B2
{
    class Mainss
    {
        public static List<Device> DeviceList = new List<Device>();
        static int CountDevice(List<Device> deviceList, string type)
        {
            int count = 0;


            foreach (Device d in DeviceList)
            {
                if (d.Type().Equals(type))
                {
                    count++;
                }
            }
            return count;
        }
        static void Input()
        {
            int sum;
                Console.WriteLine("Enter Sum Of Device :");
                 sum = int.Parse(Console.ReadLine());
                for (int i = 0; i < sum; i++)
                {
                    Console.WriteLine("Enter Type :");
                    string type = Console.ReadLine();
                    switch (type)
                    {
                        case "Laptop":
                            Device l = new Laptop();
                            l.Input();
                            DeviceList.Add(l);
                            break;
                        case "PC":
                            Device p = new PC();
                            p.Input();
                            DeviceList.Add(p);
                            break;
                        default:
                            Console.WriteLine("Value must be (Laptop or PC)");
                            break;
                    }
                }
           
          
    }
    public static void Main(string[] args)
    {
        Input();
        Console.WriteLine("Sum Device :");
        string type = Console.ReadLine();
        int count = CountDevice(DeviceList, type);
            Console.WriteLine(count);
    }
}
}


#PC.cs


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

namespace Ss12.B2
{
    class PC : Device
    {
        public  PC()
        {

        }
        public void Input()
        {
            base.Input();
        }
        public void Display()
        {
            base.Display();
        }

        public override string Type()
        {
            return "PC";
        }
    }
}


#Ultility.cs


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

namespace Ss12.Ultitis
{
    class Ultility
    {
        public static DateTime ConvertStringToDateTime(string str)
        {
            DateTime outputDateTimeValue;
            if (DateTime.TryParseExact(str, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out outputDateTimeValue))
            {
                return outputDateTimeValue;
            }
            return new DateTime();
        }
        public static string ConvertDateTimeToString(DateTime dateTime)
        {
            return dateTime.ToString("dd/MM/yyyy");
        }
    }
}


Nguyễn Hùng Anh [community,C2009G]

Ngày viết: 08:27 14/10/2021


#Device.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04.exam
{
    public abstract class Device
    {
        public string Name { get; set; }
        public string Id { get; set; }
        public string BuyDate { get; set; }

        public abstract string Type();
        public Device()
        {
        }

        public Device(string name, string id, string buyDate)
        {
            Name = name;
            Id = id;
            BuyDate = buyDate;
        }

        public virtual void Input()
        {
            Console.WriteLine("Nhap ten thiet bi: ");
            Name = Console.ReadLine();

            Console.WriteLine("Nhap ma thiet bi: ");
            Id = Console.ReadLine();

            Console.WriteLine("Nhap ngay mua thiet bi: ");
            BuyDate = Console.ReadLine();
        }

        public virtual void Display()
        {
            Console.WriteLine("Ten: " + Name + ", ma thiet bi: " + Id + ", ngay mua: " + BuyDate);
        }
    }
}


#Laptop.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04.exam
{
    class Laptop : Device
    {
        public Laptop(string name, string id, string buyDate, string type) : base(name, id, buyDate)
        {
        }

        public Laptop()
        {
        }

        public override void Input()
        {
            base.Input();
        }

        public override void Display()
        {
            base.Display();
        }

        public override string Type()
        {
            return "Laptop";
        }
    }
}


#PC.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04.exam
{
    class PC : Device
    {
        public PC(string name, string id, string buyDate, string type) : base(name, id, buyDate)
        {
            
        }

        public PC()
        {
        }

        public override void Input()
        {
            base.Input();
        }

        public override void Display()
        {
            base.Display();
        }

        public override string Type()
        {
            return "PC";
        }
    }
}


#Program.cs


using System;
using System.Collections.Generic;

namespace Lesson04.exam
{
    class Program
    {
        static List<Device> DeviceList = new List<Device>();
        static void Main(string[] args)
        {
            Input();
            Find();

        }

        private static void Find()
        {
            Console.WriteLine("Nhap vao loai thiet bi can tim: ");
            string type = Console.ReadLine();
            if(type == "PC" || type == "Laptop")
            {
                Console.WriteLine("So luong thiet bi {0} la {1}", type, Test.CountDevice(DeviceList, type));
            } else
            {
                Console.WriteLine("Nhap sai!!! Vui long nhap PC hoac Laptop");
            }
        }

        static void Input()
        {
            Console.WriteLine("Nhap so luong thiet bi can nhap: ");
            int N = Utility.ReadInt();

            for(int i = 0; i < N; i++)
            {
                Device device;
                Console.WriteLine("***Chon loai thiet bi can them: ");
                Console.WriteLine("1. PC");
                Console.WriteLine("2. Laptop");
                Console.WriteLine("Chon: ");
                int c = Utility.ReadInt();

                switch (c)
                {
                    case 1:
                        device = new PC();
                        device.Input();
                        DeviceList.Add(device);
                        break;
                    case 2:
                        device = new Laptop();
                        device.Input();
                        DeviceList.Add(device);
                        break;
                    default:
                        Console.WriteLine("Nhap sai!!!");
                        break;
                }
            }
        }

        

        

        
    }
}


#Test.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04.exam
{
    class Test
    {
        public static int CountDevice(List<Device> deviceList, string type)
        {
            int count = 0;
            foreach(Device device in deviceList)
            {
                if (type == device.Type())
                {
                    count++;
                }
            }
            return count;
        }
    }

}


#Utility.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04.exam
{
    public class Utility
    {
        public static int ReadInt()
        {
            int value;

            while(true)
            {
                try
                {
                    value = int.Parse(Console.ReadLine());
                    return value;
                } catch(Exception ex)
                {
                    Console.WriteLine("Nhap sai!!!");
                }
            }
        }
    }
}


Hieu Ngo [community,C2009G]

Ngày viết: 10:46 12/10/2021


#Device.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace TestExam
{
    class Device
    {
        public Device()
        {
        }

        public string Name { get; set; }
        public string RollNo { get; set; }
        public string Date { get; set; }

        public Device(string name, string rollNo, string date)
        {
            Name = name;
            RollNo = rollNo;
            Date = date;
        }

        public virtual void Input()
        {
            Console.WriteLine("Nhap ten thiet bi");
            Name = Console.ReadLine();
            Console.WriteLine("Nhap ma thiet bi");
            RollNo = Console.ReadLine();
            Console.WriteLine("Nhap ngay mua");
            Date = Console.ReadLine();
        }

        public virtual void Display()
        {
            Console.WriteLine("Ten thiet bi: {0}, Ma thiet bi: {1}, Ngay mua: {2}", Name, RollNo, Date);
        }
    }
}


#Laptop.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace TestExam
{
    class Laptop : Device
    {
        public Laptop()
        {
        }

        public Laptop(string name, string rollNo, string date) : base(name, rollNo, date)
        {
        }

        public override void Display()
        {
            base.Display();
        }

        public override void Input()
        {
            base.Input();
        }
    }
}


#PC.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace TestExam
{
    class PC : Device
    {
        public PC()
        {
        }

        public PC(string name, string rollNo, string date) : base(name, rollNo, date)
        {
        }

        public override void Display()
        {
            base.Display();
        }

        public override void Input()
        {
            base.Input();
        }
    }
}


#Program.cs


using System;
using System.Collections.Generic;

namespace TestExam
{
    class Program
    {
        static void Main(string[] args)
        {
            List<Device> devices = new List<Device>();
            Console.WriteLine("Number of Device:");
            int n = Utility.ReadInt();
            int i = 0;
            while (i < n)
            {
                Device device = new Device();
                device.Input();
                devices.Add(device);
                i++;
            }

            Console.WriteLine("Number Of Laptop: {0}", Test.CountDevice(devices, "Laptop"));
            Console.WriteLine("Number Of PC:{0}", Test.CountDevice(devices, "PC"));

                     
        }  
            
    }
}


#Test.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace TestExam
{
    class Test
    {
       public static int CountDevice(List<Device> devices, string type)
        {
            int count = 0;
            foreach(Device device in devices)
            {
                if(type == device.RollNo)
                {
                    count++;
                }
            }
            return count;
        }

    }
}


#Utility.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace TestExam
{
    public class Utility
    {
        public static int ReadInt()
        {
            int value;
            while(true)
            {
                try
                {
                    value = int.Parse(Console.ReadLine());
                    return value;
                } catch (Exception ex)
                {
                    Console.WriteLine("Nhap sai!!!");
                }
            }
        }
    }
}


Nguyễn Quốc Anh [community,C2010G]

Ngày viết: 15:51 04/10/2021


#Device.cs


using System;

namespace Lesson04
{
    public class Device
    {
        public String Name { get; set; }
        public String ID { get; set; }
        public String Date { get; set; }

        public Device() { }

        public Device(string name, string id, string date)
        {
            Name = name;
            ID = id;
            Date = date;
        }

        public virtual void Input()
        {
            Console.WriteLine("Enter Device Name: ");
            Name = Console.ReadLine();
            Console.WriteLine("Enter Device ID: ");
            ID = Console.ReadLine();
            Console.WriteLine("Enter Date: ");
            Date = Console.ReadLine();
        }

        public virtual void Display()
        {
            Console.WriteLine("Name = {0}, ID = {1}, Date = {2}", Name, ID, Date);
        }
    }
}


#Laptop.cs


namespace Lesson04
{
    public class Laptop : Device
    {
        public Laptop() { }

        public Laptop(string name, string id, string date) : base(name, id, date)
        {

        }

        public override void Input()
        {
            base.Input();
        }

        public override void Display()
        {
            base.Display();
        }
    }
}


#PC.cs


namespace Lesson04
{
    public class PC : Device
    {
        public PC()
        { }

        public PC(string name, string id, string date) : base(name, id, date)
        { }

        public override void Input()
        {
            base.Input();
        }

        public override void Display()
        {
            base.Display();
        }
    }
}


#Program.cs


using System;
using System.Collections.Generic;
namespace Lesson04
{
    class Test
    {
        static void Main(string[] args)
        {

            List<Device> deviceList = new List<Device>();

            Console.WriteLine("Enter number of device: ");
            int N = int.Parse(Console.ReadLine());
            int i = 0;
            while (i < N)
            {
                Device a = new Device();
                a.Input();
                deviceList.Add(a);
                i++;
            }


            Console.WriteLine("Number of Laptop = {0}", CountDevice(deviceList, "Laptop"));
            Console.WriteLine("Number of PC = {0}", CountDevice(deviceList, "PC"));
        }

        static int CountDevice(List<Device> deviceList, string type)
        {
            int count = 0;
            Device device = new Device();
            for (int i = 0; i < deviceList.Count; i++)
            {

                if (type == device.ID)
                {
                    count++;
                }
            }
            return count;

        }
    }
}


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

Tài Liệu Tham Khảo

Đã sao chép!!!