С# исправить ошибку и объяснить алгоритм нахождения седловых точек - C#
Формулировка задачи:
Можете подправить косяки, и объяснить как найти номер всех седловых точек массива. ЗЫ матрица А имеет седловую точку Аij, если Аij является минимальном элементом в i-той строке и максимальным в j-ом столбце.
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace масивСИШАРП
- {
- class Program
- {
- static void Main(string[] args)
- {
- const int m = 4, n = 4;
- int[,] a=new int[m, n] {
- {1, -2, 3, 4},
- {5, -6, -7, 8},
- {-9, 10, 11, 12},
- {13, -14, 15, -16},
- };
- Console.WriteLine("Исходный масив:" );
- for (int i = 0; i < m; ++i)
- {
- for (int j = 0; j < n; ++j)
- Console.WriteLine("\t", +a[i, j]);
- Console.WriteLine();
- }
- double summ = 0;
- for (int i = 0; i < m; ++i)
- {
- for (int j = 0; j < n; ++j)
- summ += a[i, j];
- if (a[i, j] >= 0) ++summ;
- }
- Console.WriteLine("Сумма положительных элементов" + summ);
- }
- }
- }
Решение задачи: «С# исправить ошибку и объяснить алгоритм нахождения седловых точек»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace масивСИШАРП
- {
- class Program
- {
- static void Main(string[] args)
- {
- const int m = 4, n = 4;
- int[,] a = new int[m, n] {
- {0, -2, 3, 4},
- {5, -6, -7, 8},
- {-9, -10, 11, -12},
- {13, -14, 15, -15},
- };
- double summ = 0;
- for (int i = 0; i < m; i++)
- for (int j = 0; j < n; j++)
- {
- if (a[i, j] > 0)
- {
- summ += a[i, j];
- }
- int max = int.MinValue, min = int.MaxValue, jmin=int.MaxValue, imax=int.MinValue;
- if (a[i, j] < min)
- {
- min = a[i, j];
- jmin = j;
- }
- if (i == n - 1)
- {
- for (int k = 0; k < m; k++)
- if (a[k, jmin] > max)
- {
- max = a[k, jmin];
- imax = k;
- }
- }
- }
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д