static void Main(string[] args) { double upperW; ushort minSumLineId; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём квадратную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_SIDE); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); upperW = me.CalcUpperW(); System.Console.WriteLine(String.Format("Srednee arifmeticheskoe el-tov vyshe glavnoy diagonali {0,5:0.###}", upperW)); minSumLineId = me.getMinSumLineId(); System.Console.WriteLine(String.Format("V {0} stroke minimalnaya summa elementov", minSumLineId + 1)); // Умножаем элементы строки minSumLineId на среднее арифметическое элементов выше диагонали upperW me.Multiply(minSumLineId, upperW); me.Print(); Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём квадратную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_SIDE); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsTriangular()) { // Выводим среднее арифметическое положительных элементов System.Console.WriteLine(String.Format("Sredneye arifmet polozhitelnyh elementov: {0,6:0.####}", me.CalcPosW())); } else { // Среднее арифметическое элементов выше главной диагонали System.Console.WriteLine(String.Format("Vyshe glavnoy diagonaly sredn arifmet: {0,6:0.####}", me.CountUpElsW())); } Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём квадратную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_SIDE); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsSymmetric()) { System.Console.WriteLine("Matrica symmetrichna"); // Обнуляем элементы выше главной диагонали me.Triangulate(); me.Print(); // Показать сумму элементов ниже главной диагонали System.Console.WriteLine(String.Format("Summa elementov ravna {0,5:0.###}", me.CountDownSum())); } else { System.Console.WriteLine("Matrica ne symmetrichna"); } Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); me.DownNegatives(); me.Print(); ushort eN = me.GetN(); if(eN > 0) { System.Console.WriteLine(String.Format("Do N-noy stroki vkluchitelno otricatelnyh elementov net. N = {0}", eN)); // Отрезаем матрицу снизу, метод унаследован из класса базовой матрицы me.Truncate(eN, 0); me.Print(); } else System.Console.WriteLine("Odin ili neskolko stolbcov sostoyat tolko iz otricatelnyh el-tov"); Console.ReadKey(); }
static void Main(string[] args) { double[] sums; ushort minRow; ushort maxRow; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); // Считаем суммы элементов по строкам матрицы и запоминаем результат - пригодится sums = me.GetElementsSums(); maxRow = me.GetMaxLineNumber(sums); minRow = me.GetMinLineNumber(sums); me.SwapRows(minRow, maxRow); me.Print(); Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём объект матрицы, адаптированной для текущей задачи (14 строк, 4 столбца) MatrixEx me = new MatrixEx(144, 8); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); Console.ReadKey(); // Ждём выброс и валим нахер! }
static void Main(string[] args) { // Среднее арифметическое матрицы для сравнения double oldW = 0; ushort mneg; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); // Выводим среднее арифметическое изначально сгенерированной матрицы oldW = me.CalcW(); System.Console.WriteLine(String.Format("Sredneye arifmet: {0,6:0.####}", oldW)); // Определяем столбец в котором максимальное количество отрицательных элементов mneg = me.WhichIsMaxNegative(); System.Console.WriteLine(String.Format("V {0} stolbce bolshe vsego otricatelnyh elementov", mneg + 1)); me.AbsoluteAfter(mneg); me.Print(); // Отвечаем на вопрос о том, как изменилось среднее арифметическое double newW = me.CalcW(); if(newW == oldW) System.Console.WriteLine(String.Format("Srednee arifmeticheskoe ne izmenilos': {0,6:0.####}", newW)); if(newW < oldW) System.Console.WriteLine(String.Format("Srednee arifmeticheskoe umenshilos': {0,6:0.####}", newW)); if(newW > oldW) System.Console.WriteLine(String.Format("Srednee arifmeticheskoe vozroslo: {0,6:0.####}", newW)); Console.ReadKey(); // Ждём выброс и валим нахер! }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsMoreThanHalfPrimes()) { System.Console.WriteLine("V massive bolshe poloviny prostyh chisel"); me.SortLastCol(); me.Print(); } else { System.Console.WriteLine("V massive menshe poloviny prostyh chisel"); } Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём квадратную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_SIDE); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsTriangular()) { // Выводим среднее арифметическое матрицы System.Console.WriteLine(String.Format("Sredneye arifmet: {0,6:0.####}", me.CalcW())); } else { // Показать количество элементов выше главной диагонали, отличных от нуля System.Console.WriteLine(String.Format("Vyshe glavnoy diagonaly {0} el-tov ne ravny 0", me.CountUpEls())); } Console.ReadKey(); }
static void Main(string[] args) { // Среднее арифметическое матрицы для сравнения double oldW = 0; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); // Выводим среднее арифметическое изначально сгенерированной матрицы oldW = me.CalcW(); System.Console.WriteLine(String.Format("Sredneye arifmet: {0,6:0.####}", oldW)); // Проверяем первое условие задачи if(me.IsFirstMaxNegative()) { /* Так как в первой строке оказалось максимальное количество отрицательных элементов, меняем * элементы матрицы на их модули, после чего выводим изменённую матрицу, считаем новое среднее * арифметическое и выводим его тоже: */ me.Absolute(); me.Print(); // Отвечаем на вопрос о том, как изменилось среднее арифметическое double newW = me.CalcW(); if(newW == oldW) System.Console.WriteLine(String.Format("Srednee arifmeticheskoe ne izmenilos': {0,6:0.####}", newW)); if(newW < oldW) System.Console.WriteLine(String.Format("Srednee arifmeticheskoe umenshilos': {0,6:0.####}", newW)); if(newW > oldW) System.Console.WriteLine(String.Format("Srednee arifmeticheskoe vozroslo: {0,6:0.####}", newW)); } else { System.Console.WriteLine("V pervoi stroke matricy ne maximalnoe kol-vo otricatelnyh elementov"); } Console.ReadKey(); // Ждём выброс и валим нахер! }
static void Main(string[] args) { // Заданные по условию задачи величины (менять в коде, либо дописывать чтение ввода пользователя) double excParam1 = Constants.PARAM1; double[] sums; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); // Считаем суммы элементов по строкам матрицы и запоминаем результат - пригодится sums = me.GetElementsSums(); ushort maxcol = me.GetMaxColNumber(sums); if(maxcol > excParam1) { // Условие задачи соблюдено me.Truncate(0, maxcol); me.Print(); } else { // По условию задачи номер строки с максимальной суммой элементов не больше заданного числа double[] ncol = me.GetColAsArray(maxcol); foreach(double nval in ncol) { System.Console.WriteLine(String.Format("| {0,5:0.##} |", nval)); } } Console.ReadKey(); }
static void Main(string[] args) { // Заданная по условию задачи величина (менять в коде, либо дописывать чтение ввода пользователя) uint excParam1 = Constants.PARAM1; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.TOTAL_POINTS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsInCircle(excParam1)) { System.Console.WriteLine("Vse tochki v krugu"); // Все точки плоскости попали в круг, печатаем средние координаты me.PrintWs(); } else { System.Console.WriteLine("Ne vse tochki v krugu"); // Не все точки плоскости попали в круг, печатаем номера исключений me.PrintExceptions(excParam1); } Console.ReadKey(); }
static void Main(string[] args) { // Заданная по условию задачи величина (менять в коде, либо дописывать чтение ввода пользователя) int excParam1 = Constants.PARAM1; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); // Первое действие по условию задачи - в каждом столбце максимальный элемент на первое место me.MaxFirst(); // И сразу проверяем me.Print(); if(me.FrontLineBigger(excParam1)) { // Крайнее условие задачи соблюдено, делим последнюю строку на первую: me.DivideLastByFirst(); me.Print(); } else { System.Console.WriteLine("Est' elementy po modulu menshe zadannogo chisla"); } Console.ReadKey(); // Ждём выброс и валим нахер! }
static void Main(string[] args) { uint excParam1 = Constants.PARAM1; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsMoreThanXPrimes(excParam1)) { System.Console.WriteLine(String.Format("V massive bolshe {0} prostyh chisel", excParam1)); System.Console.WriteLine(String.Format("Summa polozhitelnyh elementov: {0}", me.SumPos())); } else { System.Console.WriteLine(String.Format("V massive ne bolee {0} prostyh chisel", excParam1)); } Console.ReadKey(); }
static void Main(string[] args) { uint exParam1 = Constants.PARAM1; double minPos; double maxNeg; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); minPos = me.GetMinPos(); maxNeg = me.GetMaxNeg(); System.Console.WriteLine(String.Format("Minimalny polozhit: {0,5:0.###}, maximalny otricat: {1,5:0.###}", minPos, maxNeg)); // Проверяем условие задачи double diff = Math.Abs(Math.Abs(minPos) - Math.Abs(maxNeg)); System.Console.WriteLine(String.Format("Elementy otlichautsa na {0,5:0.###}", diff)); if(diff < exParam1) { /* Так как элементы по модулю отличаются меньше, чем на заданную величину, то меняем * элементы матрицы на их модули, после чего выводим изменённую матрицу */ me.Absolute(); me.Print(); } else { System.Console.WriteLine("Elementy otlichautsa bolshe chem na zadannuy velichinu ili rovno na nee"); } Console.ReadKey(); }
static void Main(string[] args) { // Заданная по условию задачи величина (менять в коде, либо дописывать чтение ввода пользователя) ushort excParam1 = Constants.PARAM1; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsMinSumIn((ushort) (excParam1 - 1))) { System.Console.WriteLine(String.Format("Summa v {0} stolbce minimalna", excParam1)); // В k-ом столбце минимальная сумма элементов, ищем сумму до k столбца System.Console.WriteLine(String.Format("Summa do {0} stolbca ravna: {1,5:0.##}", excParam1, me.GetColSum(0, (ushort) (excParam1 - 1)))); } else { System.Console.WriteLine(String.Format("Summa v {0} stolbce ne minimalna", excParam1)); // Не максимальная сумма, ищем сумму после k System.Console.WriteLine(String.Format("Summa posle {0} stolbca ravna: {1,5:0.##}", excParam1, me.GetColSum((ushort)(excParam1 - 1), 0))); } Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу, в конструктор передаём размер матрицы MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); if(me.IsAsc()) { // Ищем сколько всего нулей, это условие выполняется редко, ~ 1 раз из 10 System.Console.WriteLine("Kolvo nulevih elementov po vozrastaniu"); System.Console.WriteLine(String.Format("Vsego nuley: {0}", me.CountNulls())); } else { // По условию определяем номер столбца в котором максимум нулей System.Console.WriteLine(String.Format("V {0} stolbce maximum nuley", (ushort) (me.MaxNullsColumn() + 1))); } Console.ReadKey(); }
static void Main(string[] args) { // Заданные по условию задачи величины (менять в коде, либо дописывать чтение ввода пользователя) double excParam1 = Constants.PARAM1; double excParam2 = Constants.PARAM2; double[] sums; // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); // Считаем суммы элементов по строкам матрицы и запоминаем результат - пригодится sums = me.GetElementsSums(); if(me.CheckCond(sums, excParam1, excParam2)) { // Все суммы элементов строк попадают на заданный отрезок System.Console.WriteLine("Vse summy elementov popadaut na zadanny otrezok"); me.PrintMaxLineNumber(sums); } Console.ReadKey(); }
static void Main(string[] args) { // Чистим чтобы старое не мешалось :) Console.Clear(); // Создаём прямоугольную матрицу MatrixEx me = new MatrixEx(Constants.MATRIX_ROWS, Constants.MATRIX_COLS); // Выводим таблицу, метод Print описан в классе базовой матрицы и унаследован me.Print(); me.MoveMinNullzFirst(); me.DownNullz(); me.Print(); Console.ReadKey(); }