Advertisement
Sephinroth

prac 14 ex 2

Dec 8th, 2019
264
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.54 KB | None | 0 0
  1.  
  2.  
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.IO;
  8.  
  9. namespace ConsoleApplication2
  10. {
  11.     struct SBagage: IComparable
  12.     {
  13.         public string name;
  14.         public int count, weight;
  15.         public SBagage (string name, int count, int weight)
  16.         {
  17.             this.name = name;
  18.             this.count = count;
  19.             this.weight = weight;
  20.         }
  21.         public void Show()
  22.         {
  23.             Console.WriteLine("{0}; количество вещей: {1}; вес: {2}", name, count, weight);
  24.         }
  25.         public double Average ()
  26.         {
  27.             return weight / count;
  28.         }
  29.         public int CompareTo(object obj)
  30.         {
  31.             SBagage  person = (SBagage) obj;
  32.             return this.count.CompareTo(person.count);
  33.         }
  34.         /*public int CompareTo(int n_weight)
  35.         {
  36.             if (this.Average() == n_weight)
  37.                 return 0; else
  38.                     if (this.Average() < n_weight)
  39.                         return -1; else
  40.                             return 1;
  41.         }
  42.         public int CompareTo(SBagage x)
  43.         {
  44.             if (this.count == x.count)
  45.                 return 0; else
  46.                     if (this.count < x.count)
  47.                         return -1; else
  48.                             return 1;
  49.         }*/
  50.        
  51.     }
  52.    
  53.     class Program
  54.     {
  55.        
  56.         static void Sort(ref SBagage[] array)
  57.         {
  58.             for (int i = 0; i < array.Length; i++)
  59.                 for (int j = i+1; j < array.Length; j++)
  60.                     if (array[j].CompareTo(array[i]) >= 0)
  61.                         {
  62.                             SBagage tmp = new SBagage();
  63.                             tmp = array[i];
  64.                             array[i] = array[j];
  65.                             array[j] = tmp;
  66.                         }
  67.                        
  68.         }
  69.         static void Main(string[] args)
  70.         {
  71.             using (StreamReader input = new StreamReader("e:/practice/input.txt", Encoding.GetEncoding(1251)))
  72.             {
  73.                 int n = int.Parse(input.ReadLine());
  74.                 SBagage [] array = new SBagage[n];
  75.                 for (int i = 0; i < n; i++)
  76.                 {
  77.                     string [] tmp = input.ReadLine().Split(',');
  78.                     array[i].name = tmp[0];
  79.                     array[i].count = int.Parse(tmp[1]);
  80.                     array[i].weight = int.Parse(tmp[2]);
  81.                 }
  82.                 using (StreamWriter output = new StreamWriter("e:/practice/output.txt", false))
  83.                 {
  84.                     //Array.Sort(array);
  85.                     Sort(ref array);
  86.                     Console.WriteLine("Введите вес: ");
  87.                     float nor = float.Parse(Console.ReadLine());
  88.                     for (int i = 0; i < n; i++)
  89.                     if (array[i].Average() > nor)
  90.                         output.WriteLine("{0} — {1} — {2}кг", array[i].name, array[i].count, array[i].weight);
  91.                 }
  92.             }
  93.                
  94.         }
  95.     }
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement