ШПомогите решить вот что смог на СИ написать допишите пожалуйста
Дана действительная матрица размера n x m. Определить числа b1, ..., bm, равные соответственно:
a) суммам элементов строк;
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define rnd (rand()/ 32768.0) /* rand - генератор случайных чисел от
0 до int, rnd – от 0 до 1 */
void main(void) {
int i,j,n,m,a[50][50];
puts(“\n Input n, m:”); scanf(“%d %d”, &n, &m);
printf(“\n Array a \n”);
for(i=0; i<n; i++) // Вывод в виде матрицы
for(j=0; j<m; j++) {
a[j] = rnd*10 - 5; // случайные числа от –5 до 5
printf(“%d%c“, a[j], (j == m-1)? ’\n’ : ’ ‘);
}
СИ
Код: Выделить всё
//Дана действительная матрица размера n x m.
//Определить числа b1, ..., bm, равные соответственно:
//a) суммам элементов строк;
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
int main(int argc, char* argv[])
{
int N,M;
cout << "\n Input N rows: "; //строк
cin >> N;
cout << " Input M columns: "; //столбцы
cin >> M;
//создаем двумерный динамический массив
// добавим еще один столбец для b (m + 1)
int **massiv = new int*[N];
for(int i = 0; i < N; i++)
massiv[i] = new int[M + 1];
cout << " -> array ("<< N << "x" << M << ") is created\n";
//заполняем матрицу
randomize();
for(int i = 0; i < N; i++)
{
for(int j = 0; j < M; j++)
{
massiv[i][j] = random(10) - 5; // случайные числа от –5 до 5
};
};
cout << " -> array filled with random values\n";
//подсчет b1, ..., bm
for(int i = 0; i < N; i++)
{
massiv[i][M] = 0; //b
for(int j = 0; j < M; j++)
{
massiv[i][M] = massiv[i][M] + massiv[i][j];
};
};
cout << " -> counted sum of rows (B1...Bm)\n";
// Вывод в виде матрицы
cout << " -> result of work: \n";
//выводим первую строчку таблицы
cout << " COLUMS |";
for(int i = 0; i < M; i++) cout << setw(3) << (i + 1) << " |";
cout << setw(4) << "Bi" <<" |\n";
//выводим вторую строчку таблицы
cout << "--------|";
for(int i = 0; i < M; i++) cout << "----|";
cout << setw(6) << "------|\n";
//выводим третью строчку таблицы
cout << " ROWS |";
for(int i = 0; i < M; i++) cout << setw(4) << " " << "|";
cout << setw(6) << " " << "|\n";
//выводим данные
for(int i = 0; i < N; i++)
{
cout << " " << setw(3) << (i + 1) << " |";
for(int j = 0; j < M; j++)
{
cout << setw(4) << massiv[i][j] << "|";
};
cout << setw(6) << massiv[i][M] << "|";
cout << "\n";
};
//выводим последнюю строчку таблицы
cout << "--------|";
for(int i = 0; i < M; i++) cout << "----|";
cout << setw(6) << "------|\n\n";
cout << "Press anykey...";
getch();
return 0;
}
Код: Выделить всё
Input N rows: 10
Input M columns: 9
-> array (10x9) is created
-> array filled with random values
-> counted sum of rows (B1...Bm)
-> result of work:
COLUMS | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Bi |
--------|----|----|----|----|----|----|----|----|----|------|
ROWS | | | | | | | | | | |
1 | -3| 2| -2| 1| -5| 2| 4| -5| -5| -11|
2 | -4| -1| 4| 4| 1| 4| -5| 3| -4| 2|
3 | 2| -4| -1| 2| -1| 1| -2| 0| 3| 0|
4 | -5| 0| -4| 1| -4| -4| 4| 4| -3| -11|
5 | -2| 3| 0| 1| -2| -2| 2| 1| -5| -4|
6 | -5| 3| 3| -1| -4| -5| -1| 3| -2| -9|
7 | 3| 2| -5| -5| -1| -4| -1| -3| 0| -14|
8 | 4| 2| 0| 2| 4| 2| -4| -1| 0| 9|
9 | 0| -2| 4| 2| -1| 4| 4| -4| -3| 4|
10 | -3| 1| 4| 2| -2| -5| 1| 0| 0| -2|
--------|----|----|----|----|----|----|----|----|----|------|
Press anykey...