Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Операції з матрицями: сума та транспонування | Робота з двовимірними масивами
Масиви C#

Операції з матрицями: сума та транспонування

Свайпніть щоб показати меню

Операції з матрицями є важливою складовою багатьох програмних задач, особливо при роботі з даними, які природно організовані у вигляді сітки, наприклад, зображення, електронні таблиці або ігрові поля. Дві основні операції, які часто виконуються над матрицями (двовимірними масивами), — це обчислення суми всіх їх елементів та транспонування. Підрахунок суми всіх елементів корисний для аналізу даних, а транспонування матриці — обмін місцями рядків і стовпців — є ключовим у математичних обчисленнях, графіці та алгоритмах, які потребують іншої орієнтації даних.

Program.cs

Program.cs

12345678910111213141516171819202122232425262728
// File: Program.cs using System; namespace ConsoleApp { public class Program { public static void Main(string[] args) { int[,] matrix = { {1, 2, 3}, {4, 5, 6} }; int sum = 0; for (int row = 0; row < matrix.GetLength(0); row++) { for (int col = 0; col < matrix.GetLength(1); col++) { sum += matrix[row, col]; } } Console.WriteLine("Sum of all elements: " + sum); } } }

Щоб обчислити суму всіх елементів у двовимірному масиві, використовуються вкладені цикли: зовнішній цикл проходить по кожному рядку, а внутрішній — по кожному стовпцю в цьому рядку. Для кожного елемента його значення додається до поточної суми. У наведеному вище прикладі програма обчислює суму всіх елементів у матриці розміром 2x3, звертаючись до кожного значення через matrix[row, col] і накопичуючи їх у змінній sum.

Program.cs

Program.cs

123456789101112131415161718192021222324252627282930313233343536373839
// File: Program.cs using System; namespace ConsoleApp { public class Program { public static void Main(string[] args) { int[,] matrix = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; int size = matrix.GetLength(0); int[,] transposed = new int[size, size]; for (int row = 0; row < size; row++) { for (int col = 0; col < size; col++) { transposed[col, row] = matrix[row, col]; } } Console.WriteLine("Transposed matrix:"); for (int row = 0; row < size; row++) { for (int col = 0; col < size; col++) { Console.Write(transposed[row, col] + " "); } Console.WriteLine(); } } } }

Цей код виконує транспонування матриці. Починається з матриці 3×3 і створює нову матрицю, у якій рядки та стовпці поміняні місцями. За допомогою вкладених циклів кожен елемент на позиції (row, col) переноситься на позицію (col, row) у транспонованій матриці. Програма потім виводить отриману матрицю, демонструючи, як початкові рядки стають стовпцями.

Note
Примітка

Транспонування матриці означає перетворення її рядків у стовпці та навпаки.

1. Який результат транспонування матриці 2x3?

2. Як знайти суму всіх елементів у двовимірному масиві?

3. Чому транспонування корисне в операціях над матрицями?

question mark

Який результат транспонування матриці 2x3?

Виберіть правильну відповідь

question mark

Як знайти суму всіх елементів у двовимірному масиві?

Виберіть правильну відповідь

question mark

Чому транспонування корисне в операціях над матрицями?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 4. Розділ 3
some-alt