Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- int main() {
- // Ввод размера матрицы
- int matrix_size;
- cout << "Введите размер (квадратной) матрицы: ";
- cin >> matrix_size;
- cout << endl;
- int ** matrix = new int * [matrix_size];
- // Ввод элементов матрицы
- for (int i = 0; i < matrix_size; i++) {
- matrix[i] = new int [matrix_size];
- for (int j = 0; j < matrix_size; j++) {
- cout << "Введите число для " << i + 1 << " строки " << j + 1 << " столбца: ";
- cin >> matrix[i][j];
- }
- cout << endl;
- }
- // Вывод матрицы
- cout << "Получилось матрица:" << endl;
- for (int i = 0; i < matrix_size; i++) {
- for (int j = 0; j < matrix_size; j++) {
- cout << matrix[i][j] << " ";
- }
- cout << endl;
- }
- cout << endl;
- // Нахождение среднего арифметрического неотрицательных
- // элементов матрицы и подсчет таких элементов
- // в каждой строке матрицы
- int sum = 0;
- int * positive_numbers = new int [matrix_size + 1];
- positive_numbers[matrix_size + 1] = 0;
- for (int i = 0; i < matrix_size; i++) {
- positive_numbers[i] = 0;
- for (int j = 0; j < matrix_size; j++) {
- if (matrix[i][j] >= 0) {
- sum += matrix[i][j];
- positive_numbers[i]++;
- positive_numbers[matrix_size + 1]++;
- }
- }
- }
- double res = (double) sum / positive_numbers[matrix_size + 1];
- cout << "Среднее арифметическое неотрицательных элементов матрицы: " << res << endl;
- for (int i = 0; i < matrix_size; i++) {
- cout << "Количество неотрицательных чисел в строке " << i + 1 << ": " << positive_numbers[i] << endl;
- }
- // Запись в файл
- ofstream out;
- out.open("file.txt");
- if (out.is_open()) {
- out << "Среднее арифметическое неотрицательных элементов матрицы: " << res << endl;
- for (int i = 0; i < matrix_size; i++) {
- out << "Количество неотрицательных чисел в строке " << i + 1 << ": " << positive_numbers[i] << endl;
- }
- }
- cout << "Информация записана в файл" << endl << "Программа завершена." << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement