Macierze z liczbami zespolonymi, przeciążenie operatorów i operacje

0

Witam,
Potrzebuję pomocy ze stworzeniem klasy Macierzy, przeciążeniami operatorów i operacjami na macierzach. Podsyłam kod do podejrzenia, tam gdzie jest komentarz i 3 kropki potrzebuję pomocy :)

 public class Macierz
    {
        private double[,] macierz;
        //deklaracja podstawowego konstruktora
        public Macierz(int liczbaWierszy, int liczbaKolumn)
        {
            macierz = new double[liczbaWierszy, liczbaKolumn];
        }
        // deklaracja indeksera
        public double this[int wiersz, int kolumna]
        {/* deklaracja indeksera dla umożliwienia dostępu do elementów 
                tablicy w zapisie indeksowym: NazwaTablicy[Indeks1, Indeks2] */
            set { macierz[wiersz - 1, kolumna - 1] = value; }
            get { return macierz[wiersz - 1, kolumna - 1]; }

        }
        // deklaracja właściwości
        public int liczbaWierszy
        {
            //...
        }
        public int liczbaKolumn
        {
            //...
        }

        // przeciążanie operatorów: +, -, *, *
        public static Macierz operator +(Macierz a, Macierz b)
        {
            //...
        }
        public static Macierz operator -(Macierz a, Macierz b)
        {
            //...
        }
        public static Macierz operator *(Macierz a, Macierz b)
        {
            //...
        }
        public static Macierz operator *(double Liczba, Macierz a)
        {
            //...
        }

        // deklaracja operatorów konwersji
        public static explicit operator Macierz(double x)
        {
            Macierz c = new Macierz(1, 1);
            c.macierz[0, 0] = x;
            return c;
     
0

Do rozmiarów: https://stackoverflow.com/questions/4106369/how-do-i-find-the-size-of-a-2d-array
Do przeciążania operatorów: tworzysz nową instancję klasy Macierz (czyli nową tablicę) i wpisujesz dane. Jak nie wiesz jak się wykonuje operacje na macierzach to w googlach jest tego pełno, proste rzeczy, więc nie ma się czego bać nawet jak nie masz czasu.

0

W sumie dobrze zacząłeś . Mam pytanie . Ty umiesz programować ale nie masz czasu na pisanie ?

0

Jak ci idzie robienie klasy ?
Ja mam już prawie skończoną . Mam dodawanie, odejmowanie, mnożenie , dzielenie , możenie przez liczbę , konwersję liczby na macierz , konwersję tablicy na macierz, operatory porównania == i != . Jeszcze tylko zrobienie wyjątków

Nie jestem matematykiem . Nie wiem jakie są potrzebne działania jeszcze ;)

0

Konwersja liczby na macierz brzmi dość nieintuicyjnie...

Zrób jeszcze liczenie układu własnego, bez tego macierze są bezużyteczne. :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1