void txt()
{ int k=0;
QuadraticMatrixA();
ofstream file("Zero.txt");
for(int i = 1; i <=n; i++)
{
for(int j = 1; j <=n; j++)
if (x[i][j]==0)
{
file<<i<<" ";
k++;
}
}
if(k==0) cout << "No rows with one zero" << endl;
}
C/C++
Записать в файл те строки матрицы, которые содержат только один ноль С++ ПОМОГИТЕ ИСПРАВИТЬ КОД
#include <algorithm>
#include <iostream>
#include <fstream>
#include <random>
using namespace std;
int** create_matrix(size_t n, size_t m = 0) {
if (!m) m = n;
auto matrix = new int*[n];
for (size_t i = 0; i < n; ++i) matrix[i] = new int[n];
return matrix;
}
int** destroy(int** matrix, size_t n) {
if (matrix != nullptr) {
for (size_t i = 0; i < n; ++i) delete[] matrix[i];
delete[] matrix;
matrix = nullptr;
}
return matrix;
}
void fill_matrix(int left, int right, int** matrix, size_t n, size_t m = 0) {
if (!m) m = n;
if (left > right) swap(left, right);
uniform_int_distribution<> uid(left, right);
mt19937 gen{ random_device()() };
for (size_t i = 0; i < n; ++i) for (size_t j = 0; j < n; ++j) matrix[i][j] = uid(gen);
}
void show_matrix(int** matrix, size_t n, size_t m = 0) {
if (!m) m = n;
for (size_t i = 0; i < n; ++i) {
for (size_t j = 0; j < n; ++j) cout << matrix[i][j] << ' ';
puts("");
}
}
bool save_rows(const char* path, int value, size_t quantity, int** matrix, size_t n, size_t m = 0) {
if (!m) m = n;
ofstream out(path);
if (out.is_open()) {
for (size_t i = 0; i < n; ++i) {
if (count(matrix[i], matrix[i] + m, value) == quantity) {
for (size_t j = 0; j < m; ++j) {
out << matrix[i][j];
if (j + 1 != m) out.put(' ');
}
out.put('\n');
}
}
out.close();
return true;
}
return false;
}
int main() {
const size_t n = 6;
auto matrix = create_matrix(n);
const int left = 0;
const int right = 9;
fill_matrix(left, right, matrix, n);
show_matrix(matrix, n);
const char* path = "zero.txt";
const int value = 0;
const size_t quantity = 1;
puts(save_rows(path, value, quantity, matrix, n) ? "OK!" : "Failure!");
matrix = destroy(matrix, n);
}
#include <iostream>
#include <fstream>
#include <random>
using namespace std;
int** create_matrix(size_t n, size_t m = 0) {
if (!m) m = n;
auto matrix = new int*[n];
for (size_t i = 0; i < n; ++i) matrix[i] = new int[n];
return matrix;
}
int** destroy(int** matrix, size_t n) {
if (matrix != nullptr) {
for (size_t i = 0; i < n; ++i) delete[] matrix[i];
delete[] matrix;
matrix = nullptr;
}
return matrix;
}
void fill_matrix(int left, int right, int** matrix, size_t n, size_t m = 0) {
if (!m) m = n;
if (left > right) swap(left, right);
uniform_int_distribution<> uid(left, right);
mt19937 gen{ random_device()() };
for (size_t i = 0; i < n; ++i) for (size_t j = 0; j < n; ++j) matrix[i][j] = uid(gen);
}
void show_matrix(int** matrix, size_t n, size_t m = 0) {
if (!m) m = n;
for (size_t i = 0; i < n; ++i) {
for (size_t j = 0; j < n; ++j) cout << matrix[i][j] << ' ';
puts("");
}
}
bool save_rows(const char* path, int value, size_t quantity, int** matrix, size_t n, size_t m = 0) {
if (!m) m = n;
ofstream out(path);
if (out.is_open()) {
for (size_t i = 0; i < n; ++i) {
if (count(matrix[i], matrix[i] + m, value) == quantity) {
for (size_t j = 0; j < m; ++j) {
out << matrix[i][j];
if (j + 1 != m) out.put(' ');
}
out.put('\n');
}
}
out.close();
return true;
}
return false;
}
int main() {
const size_t n = 6;
auto matrix = create_matrix(n);
const int left = 0;
const int right = 9;
fill_matrix(left, right, matrix, n);
show_matrix(matrix, n);
const char* path = "zero.txt";
const int value = 0;
const size_t quantity = 1;
puts(save_rows(path, value, quantity, matrix, n) ? "OK!" : "Failure!");
matrix = destroy(matrix, n);
}
Похожие вопросы
- Найти максимальный элементы в строке матрицы
- Найти сумму цифр чисел, записанных в файл
- Помогите написать код с файлами C++
- Помогите написать код с файлами C++
- Помогите написать код c++ со строками
- Помогите исправить ошибку в коде, смотри внутри.
- Помогите написать код на Си, по теме "строки".
- Помогите доработать код на СИ по теме строки
- Помогите написать код! С++ Строки (без использования классов)
- В файле дана двухмерная матрица, сформировать одномерный массив длинной N из чётных элементов квадратной матрицы