С# исправить ошибку и объяснить алгоритм нахождения седловых точек - C#

Узнай цену своей работы

Формулировка задачи:

Можете подправить косяки, и объяснить как найти номер всех седловых точек массива. ЗЫ матрица А имеет седловую точку Аij, если Аij является минимальном элементом в i-той строке и максимальным в j-ом столбце.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace масивСИШАРП
  7. {
  8. class Program
  9. {
  10. static void Main(string[] args)
  11. {
  12. const int m = 4, n = 4;
  13. int[,] a=new int[m, n] {
  14. {1, -2, 3, 4},
  15. {5, -6, -7, 8},
  16. {-9, 10, 11, 12},
  17. {13, -14, 15, -16},
  18. };
  19. Console.WriteLine("Исходный масив:" );
  20. for (int i = 0; i < m; ++i)
  21. {
  22. for (int j = 0; j < n; ++j)
  23. Console.WriteLine("\t", +a[i, j]);
  24. Console.WriteLine();
  25. }
  26. double summ = 0;
  27. for (int i = 0; i < m; ++i)
  28. {
  29. for (int j = 0; j < n; ++j)
  30. summ += a[i, j];
  31. if (a[i, j] >= 0) ++summ;
  32. }
  33. Console.WriteLine("Сумма положительных элементов" + summ);
  34. }
  35.  
  36. }
  37. }

Решение задачи: «С# исправить ошибку и объяснить алгоритм нахождения седловых точек»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace масивСИШАРП
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             const int m = 4, n = 4;
  14.             int[,] a = new int[m, n] {
  15.             {0, -2, 3, 4},
  16.             {5, -6, -7, 8},
  17.             {-9, -10, 11, -12},
  18.             {13, -14, 15, -15},
  19.             };
  20.             double summ = 0;
  21.             for (int i = 0; i < m; i++)
  22.                 for (int j = 0; j < n; j++)
  23.                 {
  24.                     if (a[i, j] > 0)
  25.                     {
  26.                         summ += a[i, j];
  27.  
  28.                     }
  29.                     int max = int.MinValue, min = int.MaxValue, jmin=int.MaxValue, imax=int.MinValue;
  30.                     if (a[i, j] < min)
  31.                     {
  32.                         min = a[i, j];
  33.                         jmin = j;
  34.                     }
  35.                     if (i == n - 1)
  36.                     {
  37.                         for (int k = 0; k < m; k++)
  38.                             if (a[k, jmin] > max)
  39.                             {
  40.                                 max = a[k, jmin];
  41.                                 imax = k;
  42.  
  43.                             }
  44.                     }
  45.  
  46.  
  47.                 }
  48.  
  49.  
  50.         }
  51.     }
  52. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы