Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <iomanip>
- using namespace std;
- double** create_tab(int rowsAmmount, int columnsAmmount) {
- double** tab = new double*[rowsAmmount + 1];
- for (int i = 0; i < columnsAmmount + 1; i++) {
- tab[i] = new double[rowsAmmount + 1];
- }
- return tab;
- }
- void read_tab(double** tab, int rows, int columns) {
- for (int i = 0; i < rows; i++) {
- cout << "Podaj " << i + 1 << " wiersz: ";
- for (int j = 0; j < columns; j++) {
- cin >> tab[i][j];
- }
- }
- }
- void calculate_averages(double** tab, int rows, int columns) {
- double sum;
- for (int i = 0; i < rows; i++) {
- sum = 0;
- for (int j = 0; j < columns; j++) {
- sum += tab[i][j];
- }
- tab[i][columns] = sum / columns;
- }
- for (int j = 0; j < columns; j++) {
- sum = 0;
- for (int i = 0; i < rows; i++) {
- sum += tab[i][j];
- }
- tab[rows][j] = sum / rows;
- }
- tab[rows][columns] = 0.0;
- }
- void display(double** tab, int rows, int columns) {
- for (int i = 0; i < rows + 1; i++) {
- for (int j = 0; j < columns + 1; j++) {
- cout << setw(4) << setprecision(3) << tab[i][j] << " ";
- }
- cout << endl;
- }
- }
- int main() {
- int rows, columns;
- cout << "Podaj ilosc wierszy tablicy: ";
- cin >> rows;
- cout << "Podaj ilosc kolumn tablicy: ";
- cin >> columns;
- double** tab = nullptr;
- tab = create_tab(rows, columns);
- read_tab(tab, rows, columns);
- calculate_averages(tab, rows, columns);
- display(tab, rows, columns);
- cout << endl;
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement