1.Создайте класс Товар.
2.Добавьте поля, например: название, цена, количество шт.
3.Для каждого поля создайте свойство с методами доступа get и set.
4.Обеспечьте проверку правильности вводимых данных.
5.Добавьте метод, выводящий на экран значения всех полей класса и продемонстрируйте его работу.
6.Создайте три объекта данного класса. Задайте значения свойствам класса и выведите значения на экран.
7.Добавьте конструктор по умолчанию и конструктор, принимающий один или несколько параметров.
8.Создайте объекты данного класса с помощью различных конструкторов.
9.Добавьте в класс следующие методы:
oизменить количество товара, увеличив или уменьшив его на указанное число;
oопределить, попадает ли цена товара в заданный ценовой интервал.
10.Обеспечьте возможность продемонстрировать правильность работы созданных методов.
C#
Разработка структуры класса
А не засыпесси, штудент? Код-то не самый простой:
public class Good //1
{
//2
private string name = "Name not set";
private double price = 0;
private double amount = 0;
//3, 4
public string Name { get => name; set { name = value; } }
public double Price { get => price; set { price = value >= 0? value : 0; } }
public double Amount { get => amount; set { amount = value >= 0? value : 0; } }
//5
public override string ToString()
{
return $"Name={name} Price={price} Amount={amount}";
}
//7.1
public Good()
{
}
//7.2
public Good(string _Name, double _Price, double _Amount)
{
Name = _Name;
Price = _Price;
Amount = _Amount;
}
//9
public bool PriceInInterval(double _Low, double _High) => price >= _Low && price <= _High;
public static Good operator +(Good x, double _Amt) => new Good(x.Name, x.Price, x.Amount + _Amt);
public static Good operator -(Good x, double _Amt) => new Good(x.Name, x.Price, x.Amount - _Amt);
}
class Program
{
static void Main(string[] args)
{
//8
Good Dummy = new Good();
Good Socks = new Good("Socks", 8, 5);
Good Hat = new Good("Hat", 15, 8);
Console.WriteLine($"{Dummy}\n{Socks}\n{Hat}");
//10
Console.WriteLine(Socks.PriceInInterval(3, 6));
Console.WriteLine(Hat.PriceInInterval(3, 6));
Console.WriteLine(Socks + 3);
Console.WriteLine(Hat - 4);
Console.ReadLine();
}
}
public class Good //1
{
//2
private string name = "Name not set";
private double price = 0;
private double amount = 0;
//3, 4
public string Name { get => name; set { name = value; } }
public double Price { get => price; set { price = value >= 0? value : 0; } }
public double Amount { get => amount; set { amount = value >= 0? value : 0; } }
//5
public override string ToString()
{
return $"Name={name} Price={price} Amount={amount}";
}
//7.1
public Good()
{
}
//7.2
public Good(string _Name, double _Price, double _Amount)
{
Name = _Name;
Price = _Price;
Amount = _Amount;
}
//9
public bool PriceInInterval(double _Low, double _High) => price >= _Low && price <= _High;
public static Good operator +(Good x, double _Amt) => new Good(x.Name, x.Price, x.Amount + _Amt);
public static Good operator -(Good x, double _Amt) => new Good(x.Name, x.Price, x.Amount - _Amt);
}
class Program
{
static void Main(string[] args)
{
//8
Good Dummy = new Good();
Good Socks = new Good("Socks", 8, 5);
Good Hat = new Good("Hat", 15, 8);
Console.WriteLine($"{Dummy}\n{Socks}\n{Hat}");
//10
Console.WriteLine(Socks.PriceInInterval(3, 6));
Console.WriteLine(Hat.PriceInInterval(3, 6));
Console.WriteLine(Socks + 3);
Console.WriteLine(Hat - 4);
Console.ReadLine();
}
}
Похожие вопросы
- C# Массив структур.Конструктор .Доступ к отдельным элементам массива в массиве структур.
- Структуры в C#
- C# создание экземпляра класса с вложенным классом
- Зачем разбивать код в C# на отдельные классы?
- Базовые классы C# Нужен код такой большой
- Используя интегрированную среду разработки Microsoft Visual Studio создать два консольных приложения
- Можете объяснить по постому про создание классов?
- C# разница между созданием объекта родительского и производного класса.
- Задание. В классе Program напишите следующие методы и вызовите их в главном методе Main:
- Написать класс в котором генерируется исключение при делении элементов одного массива на другой размеры которых различны