Advertisement
Spocoman

06. Store Boxes

Mar 2nd, 2022
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.39 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace StoreBoxes
  6. {
  7.     class Item
  8.     {
  9.         public string Name { get; set; }
  10.         public double Price { get; set; }
  11.        
  12.         static void Main(string[] args)
  13.         {
  14.             List<Item> item = new List<Item>();
  15.             List<Box> box = new List<Box>();
  16.  
  17.             List <string> input = Console.ReadLine().Split().ToList();
  18.  
  19.             while ( input[0] != "end")
  20.             {
  21.                 Item currentItem = new Item();
  22.                 Box currentBox = new Box();
  23.  
  24.                 int serial = int.Parse(input[0]);
  25.                 string name = input[1];
  26.                 int quantity = int.Parse(input[2]);
  27.                 double price = double.Parse(input[3]);
  28.  
  29.                 currentItem.Name = name;
  30.                 currentItem.Price = price;
  31.                 item.Add(currentItem);
  32.  
  33.                 currentBox.SerialNumber = serial;
  34.                 currentBox.ItemName = name;
  35.                 currentBox.Quantity = quantity;
  36.                 currentBox.SumBox = (decimal)(quantity * price);
  37.  
  38.                 box.Add(currentBox);
  39.                
  40.                 input = Console.ReadLine().Split().ToList();
  41.             }
  42.            
  43.             for (int i = 0; i < box.Count; i++)
  44.             {                
  45.                 for (int j = i; j < box.Count; j++)
  46.                 {
  47.                     if (box[j].SumBox < box[i].SumBox)
  48.                     {
  49.                         Box current = box[j];
  50.                         Item temp = item[j];
  51.                         box[j] = box[i];
  52.                         box[i] = current;
  53.                         item[j] = item[i];
  54.                         item[i] = temp;
  55.  
  56.                     }
  57.                 }
  58.             }
  59.             box.Reverse();
  60.             item.Reverse();
  61.  
  62.             for (int i = 0; i < box.Count; i++)
  63.             {
  64.                 Console.WriteLine($"{box[i].SerialNumber}");
  65.                 Console.WriteLine($"-- { box[i].ItemName} - ${item[i].Price:F2}: { box[i].Quantity}");
  66.                 Console.WriteLine($"-- ${box[i].Quantity * item[i].Price:F2}");
  67.             }
  68.         }
  69.     }
  70.     class Box
  71.     {
  72.         public int SerialNumber { get; set; }
  73.         public string ItemName { get; set; }
  74.         public double Quantity { get; set; }
  75.         public decimal SumBox { get; set; }
  76.     }
  77. }
  78.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement