Witam, czy ktoś byłby w stanie mi pomoc napisać program w którym, dla macierzy zapisanych w tych tablicach wykonane zostaną następujące działania:
- dodawanie, mnożenie, transpozycja; (program powinien sprawdzać, czy posczególne działania mogą być wykonane);
- zwolniona zostanie pamięć zajmowana przez tablice.
Ma to być zrobione na wskaźnikach, i z tego troche jestem zielony :P
Z góry dziękuje za pomoc :P
Ogolnie chce do tego dodać transpozycje i dodawanie macierzy i jakoś to skleić, jakieś pomysły? :D
Edit: Mnożenie macierzy zrobiłemm, i zwalnianie pamięci a jak dodać te następne działania tam?
#include<iostream>
#include<ctime>
using namespace std;
void pobierz_rozmiary(int& n, int &m){
cout << "\npodaj liczbe wierszy: "; cin >> n;
cout << "\npodaj liczbe kolumn: "; cin >> m;
}
float** tworz_tablice(int n,int m){
//utworzenie tablicy o rozmiarze n
//ktorej elementy sa wskaznikami
float** t = new float*[n];
//utworzenie n tablic (z ktorych kazda ma rozmiar m)
//zawierajacych wartosci (dane)
for (int i = 0; i < n; i++)
t[i] = new float[m];
return t;
}
void generuj_wartosci(float**t, int n, int m){
srand(unsigned(time(0)));
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
t[i][j] =0 ; //zamiast 0 wartosci rzeczywiste z przedzialu [0,10]
}
int main(){
int lb_wier,lb_kol;
pobierz_rozmiary(lb_wier, lb_kol);
float** tab = tworz_tablice(lb_wier, lb_kol);
generuj_wartosci(tab, lb_wier, lb_kol);
//dzialania: transpozycja, dodawanie i mnozenie 2 macierzy
//zwolnienie pamieci zajmowanej przez tablice
}