C# назовем максимальный элемент двумерного массива S[n,n]- главным. Написать программу которая находит произведение чисел той строки двумерного массива, в которой расположен главный элемент
Ответы на вопрос:
--- C# 7.3 ---
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace CSLear
{
partial class Program
{
static void Main(string[] args)
{
int n = int.Parse(Console.ReadLine());
int[,] Matr = MatrixRandomize(n, n, -99, 99);
MatrixPrint(Matr);
Console.WriteLine(Matr.GetMatrRow(IntMatrRowOfMaxIndex(Matr)).Aggregate(1f, (x, y) => x * y));
Console.ReadKey();
}
private static int IntMatrRowOfMaxIndex(in int[,] Matr)
{
int max = int.MinValue;
int RowOfMax = 0;
for (int i = 0; i < Matr.GetLength(0); i++)
{
for (int j = 0; j < Matr.GetLength(1); j++)
{
if (Matr[i, j] > max)
{
max = Matr[i, j];
RowOfMax = i;
}
}
}
return RowOfMax;
}
public static int[,] MatrixRandomize(int ArrRows, int ArrCols, int minValue, int maxValue)
{
Random r = new Random();
int[,] Arr = new int[ArrRows, ArrCols];
for (int i = 0; i < ArrRows; i++)
{
for (int j = 0; j < ArrCols; j++)
{
Arr[i, j] = r.Next(minValue, maxValue);
}
}
return Arr;
}
public static void MatrixPrint<T>(T[,] Matr)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < Matr.GetLength(0); i++)
{
for (int j = 0; j < Matr.GetLength(1); j++)
{
sb.Append($"{Matr[i, j]} ");
}
sb.Append("\n");
}
Console.WriteLine(sb.ToString());
}
}
public static class Extensions
{
public static T[] GetMatrRow<T>(this T[,] Matr, int Row)
{
if (!typeof(T).IsPrimitive)
throw new InvalidOperationException("Supports only primitive types");
if (Matr == null)
throw new NullReferenceException("Null Matrix");
T[] Res = new T[Matr.GetLength(1)];
int RowLength = Matr.GetLength(0);
for (int i = 0; i < RowLength; i++)
{
Res[i] = Matr[Row, i];
}
return Res;
}
}
}
Программа выдаёт ответ в виде числа типа Single, т.к результат перемножения строки матрицы может сильно выходить даже за предел Int64
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
0104120.01.2021 13:49
-
01042006кристина010410.05.2020 06:35
-
Katrin874524.09.2021 01:33
-
nanaminer09.11.2022 12:01
-
taske047Ataske28.07.2022 20:40
-
juhf26.01.2021 11:58
-
maserdaser09.02.2021 20:41
-
vladimirshmele107.03.2022 16:05
-
Aidanok110.08.2021 19:26
-
sanka37rus20.12.2022 20:42
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.