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;