Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Dodawanie i mnożenie talic wielowymiarowych

Ostatnio zmodyfikowano 2016-04-20 13:55
Autor Wiadomość
krulas123
Temat założony przez niniejszego użytkownika
Dodawanie i mnożenie talic wielowymiarowych
» 2016-04-19 23:01:59
Witam, mogłby mi ktoś napisać jak sie dodaje i mnoży macierze/tablice wielowymiarowe. Patrzyłem w necie to jakieś tam losowe ze się podaje ile wierszy i ile kolumn, ale nie mogę nigdzie znaleźć jak zrobić to przy tablicach ustawionych na sztywno. Druga sprawa to taka ze jak dodam dwie jedynki to zeby wynik był 1 a nie 2, chodzi mi tutaj o to, żeby było tak jak w rachunku zdań w alternatywie. Tak faktycznie to nie są ani tablice ani tablice tylko grafy, kolejna i ostatnia sprawa to tam gdzie sa grafy połączone zeby wypisywało krawędzie np jak mam jedynkę na przecięciu  2,3 i 3,2 to żeby to 2,3;3,2 wypisało w jednej linii a pod spodem np 4,6;6,4 na razie mam tyle i nie wiem co dalej kombinować bo nie mogę się z tym dodawaniem grafów uporać

C/C++
#include "stdafx.h"
#include<iostream>
using namespace std;

int main()
{ //tablica pierwsza
    cout << "Pierwszy" << endl;
    const int a = 6, b = 6;
    int tab1[ a ][ b ] = { { 0, 0, 0, 0, 1, 0 }, { 0, 0, 1, 0, 0, 1 }, { 0, 1, 0, 0, 0, 0 }, { 0, 0, 0, 0, 1, 0 }, { 1, 0, 0, 1, 0, 0 }, { 0, 1, 0, 0, 0, 0 } }; //deklaracja i inicjacja tablicy wielowymiarowej
   
    cout << tab1[ 0 ][ 0 ] << "  " << tab1[ 0 ][ 1 ] << "  " << tab1[ 0 ][ 2 ] << "  " << tab1[ 0 ][ 3 ] << "  " << tab1[ 0 ][ 4 ] << "  " << tab1[ 0 ][ 5 ] << endl;
    cout << tab1[ 1 ][ 0 ] << "  " << tab1[ 1 ][ 1 ] << "  " << tab1[ 1 ][ 2 ] << "  " << tab1[ 1 ][ 3 ] << "  " << tab1[ 1 ][ 4 ] << "  " << tab1[ 1 ][ 5 ] << endl;
    cout << tab1[ 2 ][ 0 ] << "  " << tab1[ 2 ][ 1 ] << "  " << tab1[ 2 ][ 2 ] << "  " << tab1[ 2 ][ 3 ] << "  " << tab1[ 2 ][ 4 ] << "  " << tab1[ 2 ][ 5 ] << endl;
    cout << tab1[ 3 ][ 0 ] << "  " << tab1[ 3 ][ 1 ] << "  " << tab1[ 3 ][ 2 ] << "  " << tab1[ 3 ][ 3 ] << "  " << tab1[ 3 ][ 4 ] << "  " << tab1[ 3 ][ 5 ] << endl;
    cout << tab1[ 4 ][ 0 ] << "  " << tab1[ 4 ][ 1 ] << "  " << tab1[ 4 ][ 2 ] << "  " << tab1[ 4 ][ 3 ] << "  " << tab1[ 4 ][ 4 ] << "  " << tab1[ 4 ][ 5 ] << endl;
    cout << tab1[ 5 ][ 0 ] << "  " << tab1[ 5 ][ 1 ] << "  " << tab1[ 5 ][ 2 ] << "  " << tab1[ 5 ][ 3 ] << "  " << tab1[ 5 ][ 4 ] << "  " << tab1[ 5 ][ 5 ] << endl << endl << endl;
    //tablica druga
    cout << "Drugi" << endl;
    int tab2[ a ][ b ] = { { 0, 1, 1, 0, 0, 0 }, { 1, 0, 1, 0, 0, 0 }, { 1, 1, 0, 0, 0, 1 }, { 0, 0, 0, 0, 1, 1 }, { 0, 0, 0, 1, 0, 1, }, { 0, 0, 1, 1, 1, 0 } }; //deklaracja i inicjacja tablicy wielowymiarowej
   
    cout << tab2[ 0 ][ 0 ] << "  " << tab2[ 0 ][ 1 ] << "  " << tab2[ 0 ][ 2 ] << "  " << tab2[ 0 ][ 3 ] << "  " << tab2[ 0 ][ 4 ] << "  " << tab2[ 0 ][ 5 ] << endl;
    cout << tab2[ 1 ][ 0 ] << "  " << tab2[ 1 ][ 1 ] << "  " << tab2[ 1 ][ 2 ] << "  " << tab2[ 1 ][ 3 ] << "  " << tab2[ 1 ][ 4 ] << "  " << tab2[ 1 ][ 5 ] << endl;
    cout << tab2[ 2 ][ 0 ] << "  " << tab2[ 2 ][ 1 ] << "  " << tab2[ 2 ][ 2 ] << "  " << tab2[ 2 ][ 3 ] << "  " << tab2[ 2 ][ 4 ] << "  " << tab2[ 2 ][ 5 ] << endl;
    cout << tab2[ 3 ][ 0 ] << "  " << tab2[ 3 ][ 1 ] << "  " << tab2[ 3 ][ 2 ] << "  " << tab2[ 3 ][ 3 ] << "  " << tab2[ 3 ][ 4 ] << "  " << tab2[ 3 ][ 5 ] << endl;
    cout << tab2[ 4 ][ 0 ] << "  " << tab2[ 4 ][ 1 ] << "  " << tab2[ 4 ][ 2 ] << "  " << tab2[ 4 ][ 3 ] << "  " << tab2[ 4 ][ 4 ] << "  " << tab2[ 4 ][ 5 ] << endl;
    cout << tab2[ 5 ][ 0 ] << "  " << tab2[ 5 ][ 1 ] << "  " << tab2[ 5 ][ 2 ] << "  " << tab2[ 5 ][ 3 ] << "  " << tab2[ 5 ][ 4 ] << "  " << tab2[ 5 ][ 5 ] << endl;
   
   
    int tab3[ a ][ b ] = tab1[ a ][ b ] + tab2[ a ][ b ]; //dodanie do siebie macierzy A i B
   
   
   
    system( "pause" );
    return 0;
}
P-147454
aksen
» 2016-04-19 23:35:08
Najpierw piszesz , że chcesz mnożyć macierze, a potem piszesz, że to nie są macierze.
Same sprzeczności wypisujesz. Ogarnij ten bełkot, to może ktoś zrozumie o co Ci chodzi.

PS.
Do wypisywania zawartości tablicy użyj pętli i funkcji, bo masz masę nadmiarowego kodu :)
W mnożeniu macierzy nie ma nic losowego.
P-147456
krulas123
Temat założony przez niniejszego użytkownika
» 2016-04-19 23:40:48
a jak niby mam inaczej zapisać grafy skoro nie jako macierze?


Ilość kodu mnie wgl nie interesuje tu może być milion wierszy, zależy mi tylko na tym, żeby to działało a jakim cudem to już mnie guzik obchodzi. Piszę to bo muszę a nie dlatego że lubię/chcę. Im dalej od programowania tym lepiej
P-147457
aksen
» 2016-04-20 00:02:56
Takie dodawanie jak chcesz zrobisz przez operator sumy bitowej

C/C++
cout <<( 0 | 0 ) << endl; // 0
cout <<( 0 | 1 ) << endl; // 1
cout <<( 1 | 0 ) << endl; // 1
cout <<( 1 | 1 ) << endl; // 1
P-147458
Rashmistrz
» 2016-04-20 13:55:34
P-147462
« 1 »
  Strona 1 z 1