C/C++

C++ Написать программу..

Написать программу, которая вводит по столбцам с клавиатуры
двумерный динамический массив вещественных чисел и вычисляет сумму
3
его элементов по строкам. Количество элементов массива задается
пользователем. Для ввода-вывода элементов, нахождения суммы и вывода
значений разработать соответствующие функции. Программа запрашивает
количество элементов массива по строкам и столбцам, отображает введенный
массив и сумму элементов в каждой строке. Перед вводом каждого элемента
массива должна выводиться подсказка с номером элемента массива.
#include <iostream>

using namespace std;

int n,m;

void vvod_stolb(double ** A)
{ // ввод столбцами
for(int y = 0; y < m; y++)
{
for(int x = 0; x < n; x++)
{
cout << "A[" << x << "][" << y << "] = ";
cin >> A[x][y];
}
}
}

void print(double **A)
{ // вывод на экран
for(int x = 0; x < n; x++)
{
for(int y = 0; y < m; y++)
cout << A[x][y] << '\t';
cout << endl;
}
}

void sum(double ** A)
{
double sum;
for(int x = 0; x < n; x++)
{
sum = 0.;
for(int y = 0; y < m; y++)
sum += A[x][y]; // считаем сумму в строке
cout << "Сумма в строке " << x + 1 << " равна " << sum << '.' << endl;
}
}

int main()
{
do
{
cout << "Введите число столбцов: ";
cin >> n;
} while(n <= 0);
do
{
cout << "Введите число строк: ";
cin >> m;
} while(m <= 0);
double ** A;
A = new double * [n]; // выделяем память
for(int i = 0; i < n; i++)
A[i] = new double[m];

vvod_stolb(A);
print(A);
sum(A);

if(A != NULL)
{ // освобождаем память
for(int x = 0; x < n; x++)
delete [] A[x];
delete [] A;
}

return 0;
}
ГШ
Гриша Шишкин
89 001
Лучший ответ