tablica sumy kolumn
Ostatnio zmodyfikowano 2016-03-08 20:34
WhitenNerdy Temat założony przez niniejszego użytkownika |
tablica sumy kolumn » 2016-03-08 13:15:31 Program działa w połowie dobrze ale gdzieś jest błąd, którego nie widze. #include <iostream> #include <cstdlib> #include <ctime>
using namespace std;
void wypelnij( int ** tab, int n ) { for( int i = 0; i < n; i++ ) for( int j = 0; j < n; j++ ) tab[ i ][ j ] = rand() % 10; }
void wypisz( int ** tab, int n ) { for( int i = 0; i < n; i++ ) { for( int j = 0; j < n; j++ ) { cout << tab[ i ][ j ] << " "; } cout << endl; } }
void oblicz( int ** tab, int n, int * t ) { for( int k = 0; k < n; k++ ) { for( int i = 0; i < n; i++ ) { for( int j = 0; j < n; j++ ) { if( j == k ) { t[ k ] += tab[ i ][ j ]; } } } } for( int i = 0; i < n; i++ ) { cout << "\nSuma kolumny nr " << i + 1 << " = " << t[ i ]; } }
int main() { srand( time( NULL ) ); int n = 4; int * t = new int[ n ]; int ** tab = new int *[ n ]; for( int i = 0; i < n; i++ ) tab[ i ] = new int[ n ]; wypelnij( tab, n ); wypisz( tab, n ); oblicz( tab, n, t ); }
|
|
mateczek |
» 2016-03-08 13:29:10 void oblicz( int ** tab, int n, int * t ) { for( int i = 0; i < n; i++ ) { t[ i ] = 0; for( int j = 0; j < n; j++ ) { t[ i ] += tab[ j ][ i ]; } } for( int i = 0; i < n; i++ ) { cout << "\nSuma kolumny nr " << i + 1 << " = " << t[ i ]; } }
|
|
michal11 |
» 2016-03-08 15:46:23 Ale masz piękne wycieki pamięci.
|
|
WhitenNerdy Temat założony przez niniejszego użytkownika |
» 2016-03-08 20:34:45 Miałeś racje, w main() zeruje elementy t i kod działa for( int i = 0; i < n; i++ ) t[ i ] = 0;[ / i ]
|
|
« 1 » |