본문 바로가기
C#

뇌를 자극하는 C# 5.0 프로그래밍 연습문제 10장 2번

by JAESEONG LEE- developer 2022. 7. 26.

두 행렬의 곱은 다음과 같이 계산합니다. 다음 두 행렬 A와 B의 곱을 2차원 배열을 이용하여 계산하는 프로그램을 작성하시오.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
namespace ee
{
    class MainApp
    {
        static void Main(string[] args)
        {
            int[,] arrA = new int[22] { { 3,2 }, { 1,4 } };
                arrA[0,0= 3;
                arrA[0,1= 2;
                arrA[1,0= 1;
                arrA[1,1= 4;
                Console.WriteLine("arrA:\n[{0},{1}]\n[{2},{3}]", arrA[00], arrA[01], arrA[10], arrA[1,1]);
            
            int[,] arrB = new int[22] { { 9,2 }, { 1,7 }};
            arrB[00= 9;
            arrB[01= 2;
            arrB[10= 1;
            arrB[11= 7;
            Console.WriteLine("arrB:\n[{0},{1}]\n[{2},{3}]", arrB[00], arrB[01], arrB[10], arrB[11]);
 
            int matrixa = arrA[00* arrB[00+ arrA[01* arrB[10];
            int matrixb = arrA[00* arrB[01+ arrA[01* arrB[11];
            int matrixc = arrA[10* arrB[00+ arrA[11* arrB[10];
            int matrixd = arrA[10* arrB[01+ arrA[11* arrB[11];
 
 
            int[,] arrC = new int[22];
            arrC[00= matrixa;
            arrC[01= matrixb;
            arrC[10= matrixc;
            arrC[11= matrixd;
            Console.WriteLine("\n arrA와 arrB의 곱셈:\n[{0},{1}]\n[{2},{3}]", arrC[00], arrC[0,1], arrC[10], arrC[1,1]);
        }
    }
}
cs