C/C++

Программирование на C++

Напишите программу, в которой логическая переменная принимает значение True, если :
а) Все элементы k-го столбца равны элементам последнего столбца (первая программа )
б) Среднее арифметическое k-го столбца больше среднего арифметического k-й строки. (вторая)
// a)
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
int matrix[50][50];
int row, column;
cout << "Enter a number rows: ";
cin >> row;
cout << "Enter a number columns: ";
cin >> column;

for (int i = 0; i < row; ++i) {
for(int j = 0; j < column; ++j) {
cout << "matrix[" << i << "][" << j << "] = ";
cin >> matrix[i][j];
}
}

int k;
cout << "Enter a value K (no more than " << column-1 << "): ";
cin >> k;

bool is_equal = true;
for (int i = 0; i < row; ++i) {
if (matrix[i][k] != matrix[i][column-1]) {
is_equal = false;
break;
}
}

cout << boolalpha << is_equal;
return 0;
}

// b)
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
int matrix[50][50];
int row, column;
cout << "Enter a number rows: ";
cin >> row;
cout << "Enter a number columns: ";
cin >> column;

for (int i = 0; i < row; ++i) {
for(int j = 0; j < column; ++j) {
cout << "matrix[" << i << "][" << j << "] = ";
cin >> matrix[i][j];
}
}

int k;
cout << "Enter a value K (no more than " << (row < column? row-1 : column-1) << "): ";
cin >> k;

double sum1 = .0, sum2 = .0;
for (int i = 0; i < row; ++i) sum1 += matrix[i][k];
for (int j = 0; j < column; ++j) sum2 += matrix[k][j];

bool is_equal = (sum1/row > sum2/column);

cout << boolalpha << is_equal;
return 0;
}
СВ
Серега Волокитин
6 243
Лучший ответ