Практикум по курсу "Объектно-ориентированное программирование" на языке C#. Андрианова А.А - 108 стр.

UptoLike

107
Для получения количества заказанных товаров, добавим еще один
метод:
// метод получения количества заказов на данный товар
public int CountTovar(Tovar t)
{
// получение количества товара, которое уже заказано
List<int> items = (from s in list where s.tovar.Equals(t)
select s.Count).ToList<int>();
// подсчет суммы этого количества
int count = 0;
foreach (int a in items)
count += a;
return count;
}
Основной класс приложения класс Shop, который объединяет в себе
все операции, выполняемые в магазине.
// класс описания магазина
class Shop
{
Sklad sklad; // объекта склада
ListZakaz list; // объект для списка заказов
PriceList tovars; // каталог товаров
// конструктор
public Shop()
{
// создание объектов и загрузка данных из файлов
tovars = new PriceList("../../0.txt");
sklad = new Sklad("../../1.txt", tovars);
list = new ListZakaz("../../2.txt", tovars);
}
// деструктор - записывает последнюю информацию
// о заказах и состоянии склада в файлы
~Shop()
{
sklad.WriteFile("../../1.txt");
list.WriteFile("../../2.txt");
}
. . .
}
В данном классе содержится большое число методов, которые
являются посредниками при вызове методов каталога товаров. Эти методы не
     Для получения количества заказанных товаров, добавим еще один
метод:

      // метод получения количества заказов на данный товар
      public int CountTovar(Tovar t)
      {
         // получение количества товара, которое уже заказано
         List items = (from s in list where s.tovar.Equals(t)
                            select s.Count).ToList();
         // подсчет суммы этого количества
         int count = 0;
         foreach (int a in items)
            count += a;
         return count;
      }

      Основной класс приложения – класс Shop, который объединяет в себе
все операции, выполняемые в магазине.

      // класс описания магазина
      class Shop
      {
          Sklad sklad;        // объекта склада
          ListZakaz list;     // объект для списка заказов
          PriceList tovars;   // каталог товаров

          // конструктор
          public Shop()
          {
             // создание объектов и загрузка данных из файлов
             tovars = new PriceList("../../0.txt");
             sklad = new Sklad("../../1.txt", tovars);
             list = new ListZakaz("../../2.txt", tovars);
          }

           // деструктор - записывает последнюю информацию
           // о заказах и состоянии склада в файлы
           ~Shop()
           {
              sklad.WriteFile("../../1.txt");
              list.WriteFile("../../2.txt");
           }
          . . .
      }

     В данном классе содержится большое число методов, которые
являются посредниками при вызове методов каталога товаров. Эти методы не

107