public Wektor Przemnoz(Wektor inp) { if (this.lwierszy != inp.wymiar) { return(default(Wektor)); } float[] pom = new float[inp.wymiar]; for (int i = 0; i < inp.wymiar; i++) { float suma = 0; for (int k = 0; k < inp.wymiar; k++) { suma += (this.ZwrocWiersz(i)).ZwrocReprezentacje(k + 1) * inp.ZwrocReprezentacje(k + 1); //to wynika z niusansu w implementacji } //funckji ZwrocReprezentacje pom[i] = suma; } Wektor zwrot = new Wektor(pom); return(zwrot); }
static void Main(string[] args) { Wektor testowy = new Wektor(new float[2] { 1, 3 }); Wektor testowy2 = new Wektor(new float[4] { 1, 3, 5, 6 }); testowy.DodajWektor(testowy2); testowy.Pomnoz(5); Console.WriteLine(testowy.ZwrocReprezentacje(4)); Console.WriteLine(testowy.Pomnoz(testowy2)); Console.WriteLine("Drukuję kolejne współrzędne wektora testowego"); for (int i = 1; i <= testowy.SprawdzWymiar(); i++) { Console.WriteLine(testowy.ZwrocReprezentacje(i)); } Wektor skladowa1 = new Wektor(new float[3] { 9, 8, 0 }); Wektor skladowa2 = new Wektor(new float[3] { 9, 8, 1 }); Wektor skladowa3 = new Wektor(new float[3] { 1, 1, 1 }); Wektor skladowa4 = new Wektor(new float[3] { 4, 3, 2 }); Wektor[] macierz_comp = new Wektor[3] { skladowa1, skladowa2, skladowa3 }; Wektor.Macierz matrix = new Wektor.Macierz(macierz_comp); Wektor mnozenie_wekt = matrix.Przemnoz(skladowa4); Console.WriteLine("Drukuję kolejne współrzędne z wymnożenia macierzy przez wektor"); for (int i = 1; i <= mnozenie_wekt.SprawdzWymiar(); i++) { Console.WriteLine(mnozenie_wekt.ZwrocReprezentacje(i)); } Wektor pom1 = new Wektor(new float[3] { 2, 1, 3 }); Wektor pom2 = new Wektor(new float[3] { -1, 4, 0 }); Wektor[] asda = new Wektor[2] { pom1, pom2 }; Wektor.Macierz pierwsza = new Wektor.Macierz(asda); Wektor temp1 = new Wektor(new float[3] { 1, 3, 2 }); Wektor temp2 = new Wektor(new float[3] { -2, 0, 1 }); Wektor temp3 = new Wektor(new float[3] { 5, -3, 2 }); Wektor[] dada = new Wektor[3] { temp1, temp2, temp3 }; Wektor.Macierz druga = new Wektor.Macierz(dada); Wektor.Macierz trzecia = pierwsza.Przemnoz(druga); Console.WriteLine("Wypisywanie elementów macierzy pierw x drug"); for (int i = 0; i < trzecia.ZwrocWymiar(); i++) { Console.WriteLine("Wypisuję wiersz {0}:", i + 1); for (int k = 0; k < (trzecia.ZwrocWiersz(i)).SprawdzWymiar(); k++) { Console.WriteLine(trzecia.ZwrocWiersz(i).ZwrocReprezentacje(k + 1)); } } }