Непонятно задание с интерфейсами - C#
Формулировка задачи:
1. Создайте массив объектов класса Нет в. Реализуйте интерфейс IComparable для сравнения товаров по цене в методе CompareTo ().
2. Реализуйте в классе интерфейс IComparer для сравнения товаров по цене и по размерам.
3. Реализуйте интерфейс IEnumerable. Выведите на консоль список товаров, упорядоченный по цене
(1)Помогите выписать все в мейне(все 3 задания с комментарием, если можно, спасибо)
(2)Проверьте, правильно ли я первые два задания сделал ?
(3)Не понимаю как реализовать интерфейс IEnumerable
Здесь последние 3 ваще не панимать как выписать в мейн, ужас
Поможет кто ?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Intre
{
class Program
{
static void Main(string[] args)
{
Product[] mass = new Product[2];
Product[] mass1 = new Product[2];
Product[] mass2 = new Product[2];
mass[0].Produc = "Ложка";
mass[1].Produc = "Вилка";
mass[2].Produc = "Нож";
mass[0].Price = 40;
mass[1].Price = 25;
mass[2].Price = 30;
mass[0].Size = 1;
mass[1].Size = 3;
mass[2].Size = 2;
}
}
}using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Intre
{
interface IEnumerable
{
string product (object prod);
int price(object prod);
int size(object prod);
}
}using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Intre
{
interface IComparable
{
int CompareTo(object prod);
int Compare(object ob1, object ob2);
}
}using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Intre
{
class Product : IComparable, IEnumerable
{
private string product;
private int price;
private int size;
public string Produc
{
get { return product; }
set { product = value; }
}
public int Price
{
get { return price; }
set { price = value; }
}
public int Size
{
get { return size; }
set { size = value; }
}
public int CompareTo(object prod)
{
// порівняння (Цена)
Product p = (Product)prod;
if (this.price > p.price) return 1;
if (this.price < p.price) return -1;
return 0;
}
//Сортування за віком
int IComparable.Compare(object ob1, object ob2)
{
Product p1 = (Product)ob1;
Product p2 = (Product)ob2;
if (p1.price > p2.size) return 1;
if (p1.price < p2.size) return -1;
return 0;
}
string IEnumerable.product(object prod)
{
Console.WriteLine(product);
return 0;
}
int IEnumerable.price(object prod)
{
throw new NotImplementedException();
}
int IEnumerable.size(object prod)
{
throw new NotImplementedException();
}
}
}Решение задачи: «Непонятно задание с интерфейсами»
textual
Листинг программы
interface IEnumerable
{
string product (object prod);//
int price(object prod);//
int size(object prod);//
}