Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <windows.h>
- #include <cstdlib>
- #include <stack>
- using namespace std;
- int ** macierz1 = new int * [0];
- int ** macierz2 = new int * [0];
- int ** macierz3 = new int * [0];
- class wczytywanie
- {
- public:
- int wymiar11,wymiar12;
- mnozeniemacierzy(wczytywanie m2,wczytywanie m3)
- {
- if(m2.wymiar12==m3.wymiar11)
- {
- for(int i=0; i<wymiar11; i++)
- {
- macierz3[i]= new int [m3.wymiar12];
- }
- for(int i = 0; i < m2.wymiar11; i++ )
- for(int j = 0; j < m3.wymiar12; j++ )
- {
- int s = 0;
- for(int k = 0; k < m3.wymiar11; k++ ) s += macierz1 [ i ][ k ] * macierz2 [ k ][ j ];
- macierz3 [ i ][ j ] = s;
- }
- }
- else
- {
- cout<<"Macierzy nie mozna pomnozyc"<<endl;
- }
- }
- wczytywanie1()
- {
- cout<<"============================="<<endl;
- cout<<"Podaj 1 wymiar 1 macierzy: ";
- cin>>wymiar11;
- cout<<"Podaj 2 wymiar 1 macierzy: ";
- cin>>wymiar12;
- cout<<"====================="<<endl;
- for(int i=0; i<wymiar11; i++)
- {
- macierz1[i]= new int [wymiar12];
- }
- for(int a=0; a<wymiar11; a++)
- {
- for(int b=0; b<wymiar12; b++)
- {
- cout<<"Podaj wyraz "<<a+1<<" wiersza "<<b+1<<" kolumny 1 macierzy:";
- cin>>macierz1[a][b];
- }
- }
- wczytywanie2()
- {
- cout<<"============================="<<endl;
- cout<<"Podaj 1 wymiar 1 macierzy: ";
- cin>>wymiar11;
- cout<<"Podaj 2 wymiar 1 macierzy: ";
- cin>>wymiar12;
- cout<<"====================="<<endl;
- for(int i=0; i<wymiar11; i++)
- {
- macierz2[i]= new int [wymiar12];
- }
- for(int a=0; a<wymiar11; a++)
- {
- for(int b=0; b<wymiar12; b++)
- {
- cout<<"Podaj wyraz "<<a+1<<" wiersza "<<b+1<<" kolumny 1 macierzy:";
- cin>>macierz2[a][b];
- }
- }
- };
- int main()
- {
- int a,b;
- cout<<"============================="<<endl;
- cout<<"Witaj w kalkulatorze macierzy"<<endl;
- cout<<"============================="<<endl;
- cout<<"Informacje dotyczace korzystania z kalkulatora"<<endl;
- cout<<"1.Do wartosci kazdej pojedynczej macierzy "<<endl;
- cout<<"mozemy dodac lub odjac pewna wartosc,"<<endl;
- cout<<"zarowno kazda wartosc mozemy pomnozyc"<<endl;
- cout<<"i podzielic przez okreslona wartosc"<<endl;
- cout<<"2.Mozna mnozyc jedynie macierze o "<<endl;
- cout<<"wymiarach podobnych gdzie A ma wymiary"<<endl;
- cout<<"axb, a macierz B wymairy cxd, wymiary b"<<endl;
- cout<<"musi byc rowny c, a wynikiem takiego mnozenia"<<endl;
- cout<<"jest macierz axd"<<endl;
- cout<<"3.Mozna dodawac i odejmowac jedynie macierze"<<endl;
- cout<<"o tych samych wymiarach axa oraz bxb gdzie a=b"<<endl;
- cout<<"4.Wyznacznik mozemy wyznaczyc tylko z macierzy kwadratowej axa"<<endl;
- cout<<"============================="<<endl;
- cout<<"Wybierz opcje:"<<endl;
- cout<<"1.Dzialania na 1 macierzy "<<endl;
- cout<<"2.Dzialania na 2 macierzach "<<endl;
- cout<<"============================="<<endl;
- cout<<"Twoj wybor: ";
- cin>>a;
- cout<<"============================="<<endl;
- switch(a)
- {
- case 1:
- {
- cout<<"Wybrano opcje numer 1"<<endl;
- wczytywanie m1;
- Sleep(1000);
- system("cls");
- //odwolanie do funkcjiwpisaie 1 macierzy
- cout<<"============================="<<endl;
- cout<<"Wybierz dzialanie na 1 macierzy"<<endl;
- cout<<"============================="<<endl;
- cout<<"1:Zwieksz wartosci o x"<<endl;
- cout<<"2:Zmniejsz wartosci o x"<<endl;
- cout<<"3:Pomnoz wartosci przez x"<<endl;
- cout<<"4:Podziel wartosci przez x"<<endl;
- cout<<"5:Wyznacz wyznacznik"<<endl;
- cout<<"============================="<<endl;
- cout<<"Twoj wybor: ";
- cin>>b;
- cout<<"============================="<<endl;
- switch( b )
- {
- case 1:
- cout<<"Wybrano opcje numer 1"<<endl;
- cout<<"============================="<<endl;
- break;
- case 2:
- cout<<"Wybrano opcje numer 2"<<endl;
- cout<<"============================="<<endl;
- break;
- case 3:
- cout<<"Wybrano opcje numer 3"<<endl;
- cout<<"============================="<<endl;
- break;
- case 4:
- cout<<"Wybrano opcje numer 4"<<endl;
- cout<<"============================="<<endl;
- break;
- case 5:
- cout<<"Wybrano opcje numer 5"<<endl;
- cout<<"============================="<<endl;
- break;
- default:
- cout<<"Nie ma takiej opcji"<<endl;
- cout<<"============================="<<endl;
- break;
- }
- }
- break;
- case 2:
- {
- cout<<"Wybrano opcje numer 2"<<endl;
- wczytywanie m2;
- wczytywanie m3;
- mnozeniemacierzy m4;
- Sleep(1000);
- system("cls");
- //odwolanie do funkcjiwpisaie 2 macierzy
- cout<<"Wybierz dzialanie na 2 macierzach"<<endl;
- cout<<"============================="<<endl;
- cout<<"1:Dodawanie"<<endl;
- cout<<"2:Odejmowanie"<<endl;
- cout<<"3:Mnozenie"<<endl;
- cout<<"============================="<<endl;
- cout<<"Twoj wybor: ";
- cin>>b;
- cout<<"============================="<<endl;
- switch( b )
- {
- case 1:
- cout<<"Wybrano opcje numer 1"<<endl;
- cout<<"============================="<<endl;
- break;
- case 2:
- cout<<"Wybrano opcje numer 2"<<endl;
- cout<<"============================="<<endl;
- break;
- case 3:
- cout<<"Wybrano opcje numer 3"<<endl;
- cout<<"============================="<<endl;
- mnozeniemacierzy m4;
- break;
- default:
- cout<<"Nie ma takiej opcji"<<endl;
- cout<<"============================="<<endl;
- break;
- }
- break;
- }
- default:
- {
- cout<<"Nie ma takiej opcji"<<endl;
- cout<<"============================="<<endl;
- Sleep(1000);
- system("cls");
- }
- break;
- }
- return 0;
- }
- /*
- cout<<"====================="<<endl;
- for(int a=0;a<wymiar21;a++)
- {
- cout<<"| ";
- for(int b=0;b<wymiar22;b++)
- {
- cout<<macierz2[a][b]<<" ";
- }
- cout<<"|"<<endl;
- }
- cout<<"====================="<<endl;
- cout<<"Wyznacznik"<<endl;
- int ** tablicawp = new int * [wymiar11];
- for(int i=0;i<wymiar12;i++)
- {
- tablicawp[i] = new int [wymiar21];
- }
- for(int a=wymiar11;a>1;a--)
- {
- for(int b=1;b<wymiar12;b++)
- {
- tablicawp[a][b]=macierz1[a][b];
- cout<<tablicawp[a][b]<<endl;
- }
- }
- for(int i=0;i<wymiar11;i++)
- {
- tablicawp[i];
- cout<<tablicawp[i]<<endl;
- }
- delete [] tablicawp;
- cout<<"====================="<<endl;
- cout<<"Dodawanie"<<endl;
- int ** macierz3 = new int * [wymiar11];
- if((wymiar11==wymiar21)&&(wymiar12==wymiar22))
- {
- for(int i=0;i<wymiar12;i++)
- {
- macierz3[i] = new int [wymiar11];
- }
- for(int a=0;a<wymiar11;a++)
- {
- for(int b=0;b<wymiar12;b++)
- {
- macierz3[a][b]=macierz1[a][b]+macierz2[a][b];
- }
- }
- for(int z=0;z<wymiar12;z++)
- {
- delete [] macierz3[z];
- }
- delete [] macierz3;
- for(int a=0;a<wymiar21;a++)
- {
- cout<<"| ";
- for(int b=0;b<wymiar22;b++)
- {
- cout<<macierz3[a][b]<<" ";
- }
- cout<<"|"<<endl;
- }
- }
- else
- {
- cout<<"Nie mozna dodac"<<endl;
- }
- cout<<"====================="<<endl;
- cout<<"Odejmowanie"<<endl;
- if((wymiar11==wymiar21)&&(wymiar12==wymiar22))
- {
- for(int a=0;a<wymiar11;a++)
- {
- for(int b=0;b<wymiar12;b++)
- {
- macierz3[a][b]=macierz1[a][b]-macierz2[a][b];
- }
- }
- for(int z=0;z<wymiar12;z++)
- {
- delete [] macierz3[z];
- }
- delete [] macierz3;
- for(int a=0;a<wymiar21;a++)
- {
- cout<<"| ";
- for(int b=0;b<wymiar22;b++)
- {
- cout<<macierz3[a][b]<<" ";
- }
- cout<<"|"<<endl;
- }
- }
- else
- {
- cout<<"Nie mozna odjac"<<endl;
- }
- cout<<"====================="<<endl;
- cout<<"Mnozenie macierzy"<<endl;
- if(wymiar12=!wymiar21)
- {
- cout<<"Nie mozna mnozyc macierzy o takich wymiarach"<<endl;
- }
- else
- {
- cout<<"Mnozenie macierzy mozliwe ale nie gotowe"<<endl;
- }
- cout<<"====================="<<endl;
- for(int z=0;z<wymiar12;z++)
- {
- delete [] macierz2[z];
- }
- for(int z=0;z<wymiar22;z++)
- {
- delete [] macierz1[z];
- }
- delete [] macierz1;
- delete [] macierz2;
- return 0;
- }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement