C# назовем максимальный элемент двумерного массива S[n, n]- главным. Написать программу которая находит произведение чисел той строки двумерного массива, в которой расположен главный элемент
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 ("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
Елена Надыч524
13.04.2022
Начало:1.подойти к телефону,2.поднять трубку телефона,3.набрать номер друга,4.подождать пока друг поднимет трубку,5.поговорить с другом,6.поставить трубку на место,7.отойти от телефона. конец это линейный алгоритм.в линейном алгоритме шаги выполняются в той последовательности,в которой они записаны
praskovya17
13.04.2022
Тест по темам «Файлы и файловая система», «Программное обеспечение компьютера» 1.Файл это: Г) программа или данные, имеющие имя и хранящиеся в долговременной памяти 2.Имя файла состоит из двух частей: Б) имени и расширения 3.Имя файлу даёт: В) программа при его создании Г) пользователь 4.Расширение файлу присваивает: А) программа при его создании В)пользователь 5.Имя файла может включать до В) 256 символов 6.Под расширение отводится В) 3 символа Хотя возможно до 256 7.В процессе форматирования диск разбивается на две области: Б) область хранения и каталог 8.Одноуровневая файловая система В)когда каталог диска представляет собой линейную последовательность имён файлов и соответствующих начальных секторов 9.Путь к файлу Г)начинается с логического имени диска, затем записывается последовательность имён вложенных друг в друга папок, в последней из которых находится нужный файл 10.Выберите правильное имя файла В) 12345.BMP Г) SPRAVKI (расширения может и не быть, это не ошибка) 11.Операционная система относится к Б) к системному программному обеспечению 12.Где хранится выполняемая в данный момент программа и обрабатываемые данные В) в оперативной памяти 13.Каталогом называется место на диске имя и содержащее Б) файлы и другие каталоги 14.Операционная система это: Г) комплекс программ, организующих управление работой компьютера и его взаимодействие с пользователем 15.Имя логического диска обозначается Г) латинскими буквами 16.Корневой каталог – это А) первый верхний (зависит от модели, например в дереве папок корневой каталог в самом верху обычно) Б) самый нижний (зависит от модели, впринцепе корни внизу) Г) самый большой (да, потому что содержит все остальные) 17.Путь к файлу не включает ... В) команду 18.Состояние операционной системы, при котором она перестает выдавать результаты и реагировать на запросы. - это .. Г) зависание 19.Дано дерево каталогов. Определите полное имя файла Doc3. А) A:\DOC3 Б) A:\DOC3\Doc3 В) A:\DOC3\Doc1 Г) A:\TOM3\Doc3 20.В процессе загрузки операционной системы происходит: В) последовательная загрузка файлов операционной системы в оперативную память 21.Приложение - это Г) программа, с которой пользователь решает свои прикладные задачи 22.Приложение функционирует под управлением В) операционной системы Г) пользователя Управляют приложением оба 23.К приложения общего назначения не относятся: В) звуковые редакторы
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
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 ("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