OlgaPuzikova

Untitled

Mar 9th, 2022 (edited)
1,172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.58 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Runtime;
  4.  
  5. namespace laba_2_met
  6. {
  7.     class Znach
  8.     {
  9.         public int Sum;
  10.         public int Index;
  11.         public List<int> List;
  12.  
  13.         public Znach(int sum, int index, List<int> list) {
  14.             Sum = sum;
  15.             Index = index;
  16.             List= new List<int>();
  17.         }
  18.     }
  19.     class Program
  20.     {
  21.         static void Main(string[] args)
  22.         {
  23.             Console.WriteLine("N=");
  24.             int n = Convert.ToInt32(Console.ReadLine());
  25.             Console.WriteLine("M=");
  26.             int m = Convert.ToInt32(Console.ReadLine());
  27.             Console.WriteLine("Диапазон времени");
  28.             Console.WriteLine("t1=");
  29.             int t1 = Convert.ToInt32(Console.ReadLine());
  30.             Console.WriteLine("t2=");
  31.             int t2 = Convert.ToInt32(Console.ReadLine());
  32.             Console.WriteLine();
  33.            
  34.             int[,] matrix = new int[m,n];
  35.             Random rnd = new Random();
  36.             for (int i = 0; i < m; i++)
  37.             {
  38.                 for (int j = 0; j <n; j++)
  39.                 {
  40.                     matrix[i, j] = rnd.Next(t1, t2);
  41.                     Console.Write($"{matrix[i, j]}{"\t"}");
  42.  
  43.                 }
  44.                 Console.WriteLine();
  45.             }
  46.             Console.WriteLine();
  47.             //сумма
  48.             List<int> summ = new List<int>();
  49.             for (int i = 0; i < m; i++)
  50.             {
  51.                 int sum = 0;
  52.                 for (int j = 0; j  < n; j ++)
  53.                 {
  54.                     sum += matrix[i, j];
  55.                     Console.Write($"{matrix[i, j]}{"\t"}");
  56.                 }
  57.                 //change[i, n] = sum;
  58.                 summ.Add(sum);
  59.                 Console.Write($"||{sum}");
  60.                 Console.WriteLine();
  61.             }
  62.             Console.WriteLine();
  63.             //сортировка строк
  64.             List<int> copuSumm = new List<int>();
  65.             foreach (int item in summ)
  66.             {
  67.                 copuSumm.Add(item);
  68.             }
  69.             summ.Sort();
  70.             summ.Reverse();
  71.             //индекс строк суммы перед сортиовкой
  72.             List<int> indexSum = new List<int>();
  73.             foreach (int i in summ)
  74.             {
  75.                 int ind = copuSumm.IndexOf(i);
  76.                 indexSum.Add(ind);
  77.                 //Console.WriteLine(ind);
  78.             }
  79.             Console.WriteLine();
  80.             //отсортированная матрица
  81.             int[,] sortMatrix = new int[m, n];
  82.             for (int i = 0; i < m; i++)
  83.             {
  84.                 for (int j = 0; j < n; j++)
  85.                 {
  86.                     sortMatrix[i, j] = matrix[indexSum[i], j];
  87.                     Console.Write($"{sortMatrix[i,j]}{"\t"}");
  88.  
  89.                 }
  90.                 Console.Write($"||{summ[i]}");
  91.                 Console.WriteLine();
  92.             }
  93.             //минимальный элемент в строке
  94.             List<int> minElement = new List<int>();
  95.             List<int> indexMin = new List<int>();
  96.             for (int i = 0; i < m; i++)
  97.             {
  98.                 int min = sortMatrix[i, 0];
  99.                 int index = 0;
  100.                 for (int j = 0; j < n; j++)
  101.                 {
  102.                     if (min > sortMatrix[i,j])
  103.                     {
  104.                         min = sortMatrix[i, j];
  105.                         index = j;
  106.                     }
  107.                 }
  108.                 minElement.Add(min);
  109.                 indexMin.Add(index);
  110.                 //Console.Write($"{min}{"\t"}{index}");
  111.                 //Console.WriteLine();
  112.             }
  113.             Console.WriteLine();
  114.            
  115.             //подсчет элементов в столбце
  116.             int[] rez = new int [n];
  117.             for (int i = 0; i < n; i++)
  118.             {
  119.                 for (int j=0; j<m;j++)
  120.                 {
  121.                    
  122.                     if (i==indexMin[j])
  123.                     {
  124.                         rez[i] +=minElement[j];  
  125.                        
  126.                     }
  127.                    
  128.                 }
  129.                 Console.WriteLine(rez[i]);
  130.             }
  131.             Console.WriteLine("____________________________");
  132.             int max = rez[0];
  133.             for (int i = 0; i < n; i++)
  134.             {
  135.                 if (max < rez[i])
  136.                 {
  137.                     max = rez[i];
  138.                 }
  139.             }
  140.             Console.WriteLine($"MAX:{max}");
  141.  
  142.  
  143.  
  144.  
  145.         }
  146.     }
  147. }
  148.  
Add Comment
Please, Sign In to add comment