Advertisement
Guest User

Untitled

a guest
Nov 15th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <iomanip>
  4.  
  5. using namespace std;
  6.  
  7. double** create_tab(int rowsAmmount, int columnsAmmount) {
  8.     double** tab = new double*[rowsAmmount + 1];
  9.     for (int i = 0; i < columnsAmmount + 1; i++) {
  10.         tab[i] = new double[rowsAmmount + 1];
  11.     }
  12.     return tab;
  13. }
  14.  
  15. void read_tab(double** tab, int rows, int columns) {
  16.     for (int i = 0; i < rows; i++) {
  17.         cout << "Podaj " << i + 1 << " wiersz: ";
  18.         for (int j = 0; j < columns; j++) {
  19.             cin >> tab[i][j];
  20.         }
  21.     }
  22. }
  23.  
  24. void calculate_averages(double** tab, int rows, int columns) {
  25.     double sum;
  26.     for (int i = 0; i < rows; i++) {
  27.         sum = 0;
  28.         for (int j = 0; j < columns; j++) {
  29.             sum += tab[i][j];
  30.         }
  31.         tab[i][columns] = sum / columns;
  32.     }
  33.     for (int j = 0; j < columns; j++) {
  34.         sum = 0;
  35.         for (int i = 0; i < rows; i++) {
  36.             sum += tab[i][j];
  37.         }
  38.         tab[rows][j] = sum / rows;
  39.     }
  40.     tab[rows][columns] = 0.0;
  41. }
  42.  
  43. void display(double** tab, int rows, int columns) {
  44.     for (int i = 0; i < rows + 1; i++) {
  45.         for (int j = 0; j < columns + 1; j++) {
  46.             cout << setw(4) << setprecision(3) << tab[i][j] << " ";
  47.         }
  48.         cout << endl;
  49.     }
  50. }
  51.  
  52. int main() {
  53.     int rows, columns;
  54.     cout << "Podaj ilosc wierszy tablicy: ";
  55.     cin >> rows;
  56.     cout << "Podaj ilosc kolumn tablicy: ";
  57.     cin >> columns;
  58.     double** tab = nullptr;
  59.     tab = create_tab(rows, columns);
  60.     read_tab(tab, rows, columns);
  61.     calculate_averages(tab, rows, columns);
  62.     display(tab, rows, columns);
  63.     cout << endl;
  64.  
  65.     system("pause");
  66.     return 0;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement