Skocz do zawartości
Puchacz1

Macierz x Wektor

Rekomendowane odpowiedzi

Chcę przemnożyć macierz n x n przez wektor (kolumnowy) o rozmiarze n jednak coś mi nie wychodzi

 

float *MacierzWektor(float **Mac, float *X, int n){    for(unsigned short int i=0; i<n; ++i)        for(unsigned short int j=0; j<n; ++j)            X[i]+=Mac[i][j]*X[j];    return X;}
prosiłbym o wskazanie błędu.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Nadpisujesz pola wektora, które po zmianie wciąż używane są w mnożeniu. Stwórz tablicę, w której zapiszesz wynik, przed wywołaniem funkcji, wyzeruj i przekaż referencję lub wskaźnik. Jest więcej możliwości: wśród nich kontenery STL, dynamiczny przydział pamięci i tablice statyczne, ale skoro twoja funkcja zwraca wskaźnik, to przypuszczam, że gdzieś zapisujesz wynik - możesz też przekazać funkcji adres tego elementu.

Edytowane przez Vennor

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...