Advertisement
Lyubohd

Вариант-3-Задача-1

Feb 2nd, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.82 KB | None | 0 0
  1. using System;
  2.  
  3. namespace ExamPractice
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             int n = int.Parse(Console.ReadLine());
  10.  
  11.             int[,] array = new int[n, n];
  12.  
  13.             array = ReadArray(n, array);
  14.  
  15.             IsRowsSorted(n, array);
  16.             IsColsSorted(n, array);
  17.             BiggestNumberinDiagonal(n, array);
  18.             CountOfDiagonalNumbers(n, array);
  19.         }
  20.  
  21.         private static void IsColsSorted(int n, int[,] array)
  22.         {
  23.             bool isColsSorted = true;
  24.  
  25.             for (int col = 0; col < n; col++)
  26.             {
  27.                 for (int row = 1; row < n; row++)
  28.                 {
  29.                     if (array[row, col] < array[row - 1, col])
  30.                     {
  31.                         isColsSorted = false;
  32.                         break;
  33.                     }
  34.                 }
  35.             }
  36.  
  37.             if (isColsSorted)
  38.             {
  39.                 Console.WriteLine("Всички колони са сортирани.");
  40.             }
  41.             else
  42.             {
  43.                 Console.WriteLine("Колоните на матрицата не са сортирани");
  44.             }
  45.         }
  46.  
  47.         private static void IsRowsSorted(int n, int[,] array)
  48.         {
  49.             bool isRowsSorted = true;
  50.  
  51.             for (int row = 0; row < n; row++)
  52.             {
  53.                 for (int col = 1; col < n; col++)
  54.                 {
  55.                     if (array[row, col] < array[row, col - 1])
  56.                     {
  57.                         isRowsSorted = false;
  58.                         break;
  59.                     }
  60.                 }
  61.             }
  62.  
  63.             if (isRowsSorted)
  64.             {
  65.                 Console.WriteLine("Всички редове са сортирани.");
  66.             }
  67.             else
  68.             {
  69.                 Console.WriteLine("Редовете на матрицата не са сортирани");
  70.             }
  71.         }
  72.  
  73.         private static int[,] ReadArray(int n, int[,] array)
  74.         {
  75.             for (int row = 0; row < n; row++)
  76.             {
  77.                 for (int col = 0; col < n; col++)
  78.                 {
  79.                     array[row, col] = int.Parse(Console.ReadLine());
  80.                 }
  81.             }
  82.             return array;
  83.         }
  84.  
  85.         private static void BiggestNumberinDiagonal(int n, int[,] array)
  86.         {
  87.             for (int row = 0; row < n; row++)
  88.             {
  89.                 bool isMax = true;
  90.                 for (int col = 0; col < n; col++)
  91.                 {
  92.                     int diagonalElement = array[row, row];
  93.  
  94.                     if (array[row, col] > diagonalElement)
  95.                     {
  96.                         isMax = false;
  97.                     }
  98.                 }
  99.                 if (isMax)
  100.                 {
  101.                     Console.WriteLine($"Елементът на гравният диагонал на ред {row} е най-големият за реда");
  102.                 }
  103.             }
  104.         }
  105.  
  106.         private static void CountOfDiagonalNumbers(int n, int[,] array)
  107.         {
  108.             int count = 0;
  109.             for (int row = 0; row < n; row++)
  110.             {
  111.                 int leftDiagonalNumber = array[row, row];
  112.  
  113.                 if (leftDiagonalNumber > 0 && leftDiagonalNumber % 2 == 0)
  114.                 {
  115.                     count++;
  116.                 }
  117.                 int rightDiagonalNumber = array[n - row - 1, n - row - 1];
  118.                 if (rightDiagonalNumber > 0 && rightDiagonalNumber % 2 == 0)
  119.                 {
  120.                     count++;
  121.                 }
  122.             }
  123.             Console.WriteLine($"Елементите на диагоналите които са положителни и четни са {count} броя");
  124.         }
  125.     }
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement