Venciity

[Jumpstart C#] Multidimensional-Arrays 01 - Svetlio

Mar 5th, 2014
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.07 KB | None | 0 0
  1. /* Дадена е матрицата A(M,N). При зададено k, намерете:
  2.     най-големия от еле­мен­ти­те над k-тия ред.
  3.     най-малкия еле­мент под k-тия ред.
  4.     произ­ве­де­ние­то на не­нулевите елементи без тези от k-тия ред.
  5.     произ­ве­де­ние­то на еле­ментите без тези от k-тия стълб.
  6.     най-малкия еле­мент пред k-тия стълб.
  7.     най-големия еле­мент зад k-тия стълб. */
  8.  
  9. using System;
  10. using System.Collections.Generic;
  11. using System.Linq;
  12. using System.Text;
  13. using System.Threading.Tasks;
  14.  
  15. namespace MultidimentionalArraysHW
  16. {
  17.     class MultidimentionalArraysHW1
  18.     {
  19.         static void Main(string[] args)
  20.         {
  21.             int[,] matrixA = new int[4, 4]
  22.             {
  23.                 {  1,  2,  0, -5 },
  24.                 { -2,  3,  0,  7 },
  25.                 {  4,  1,  8,  0 },
  26.                 {  0, -5, -3,  2 }
  27.             };
  28.             Console.WriteLine("Please enter k: ");
  29.             int k = Int32.Parse(Console.ReadLine());
  30.  
  31.             int maxAboveKRow = Int32.MinValue;
  32.             int minUnderKRow = Int32.MaxValue;
  33.             int nonZeroProduct = 1;
  34.             int exeptKColumnProduct = 1;
  35.             for (int i = 0; i < 4; i++)
  36.             {
  37.                 for (int j = 0; j < 4; j++)
  38.                 {
  39.                     if (i < k)
  40.                         if (matrixA[i, j] > maxAboveKRow)
  41.                             maxAboveKRow = matrixA[i, j];
  42.                     if (i > k)
  43.                         if (matrixA[i, j] < minUnderKRow)
  44.                             minUnderKRow = matrixA[i, j];
  45.                     if (i != k)
  46.                         if (matrixA[i, j] != 0)
  47.                             nonZeroProduct *= matrixA[i, j];
  48.                     if (j != k)
  49.                         exeptKColumnProduct *= matrixA[i, j];
  50.                 }
  51.             }
  52.             Console.WriteLine("Max = {0}", maxAboveKRow);
  53.             Console.WriteLine("Min = {0}", minUnderKRow);
  54.             Console.WriteLine("NonZeroProduct = {0}", nonZeroProduct);
  55.             Console.WriteLine("ExeptKColumnProduct = {0}", exeptKColumnProduct);
  56.         }
  57.     }
  58. }
  59. //          int rows = matrixA.GetLength(0);
  60. //          int cols = matrixA.GetLength(1);
  61. //
  62. //          if (k < rows-1)
  63. //          {
  64. //              int row = 0;
  65. //              int col = k-1;
  66. //              int min = matrixA[row, col];
  67. //              for (int i = 0; i < k; i++)
  68. //              {
  69. //                  for (int j  = 0; j < rows; j++)
  70. //                  {
  71. //                      if (min > matrixA[j,i])
  72. //                      {
  73. //                          min = matrixA[j, i];
  74. //                          row = j;
  75. //                          col = i;
  76. //                      }
  77. //                  }
  78. //              }
  79. //              Console.WriteLine("max element at row #{0} and col #{1} is {2}", row, col, min);
  80. //          }
Advertisement
Add Comment
Please, Sign In to add comment