• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Mnożenie macierzy kwadratowych.

Konkurs Mistrz Programowania
+2 głosów
1,773 wizyt
pytanie zadane 16 kwietnia 2016 w C i C++ przez asfreestyle Obywatel (1,310 p.)

Cześć,

Czytałem wiele rozwiązań na forach, niestey nie rozwiazałem zadania. napisałem program który alokuje dynamicznie 2 macierze liczbami psełdo-losowymi, napisałem funkcję która mnoży te 2 macierze.

void Mult(int **tab1, int **tab2, int **tab3, int size)
{
	int n = size;
	int i, j, k;
	for (i = 0;i < n;i++)
		for (j = 0;j < n;j++)
		{
			tab3[i][j] = 0;
			for (k = 0;k < n;k++)
				tab3[i][j] += tab1[i][k] * tab2[k][j];
		}
}

Chciałem przepisać tą funkcję by poruszać się po tablicy na wskaźnikach. Niestety nie rozumiem jak to działa przeczytałem http://asawicki.info/productions/artykuly/strukturyd_formatyp.php5#2_1 oraz informacje o wskaźnikach w Symfonii niestety dalej tego nie rozumiem do końca, próbuje napisać to sam ale jak na razie same herezje.

int **Mult2(int **tab1, int **tab2, int **tab3, int size)
{
	int n = size;
	int i, j, k;

	for (i = 0;i < n;i++)
	{

		int *p1 = tab1[i];
		int *p2 = tab2[i];
		int *p3 = tab3[i];


		for (j = 0;j < n;j++,p1++,p2++,p3++ )
			*p3+=*p2* (*p3);
		
		Print(&p3,n);
	}
	return tab3;
}

 

Mógłby ktoś wytłumaczyć jak to działa i jak to napisać? 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 241 wizyt
0 głosów
0 odpowiedzi 298 wizyt
pytanie zadane 7 grudnia 2023 w C# przez saii Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 425 wizyt
pytanie zadane 27 maja 2023 w C i C++ przez natalia2002. Początkujący (400 p.)

93,656 zapytań

142,577 odpowiedzi

323,100 komentarzy

63,174 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...