Documentos de Académico
Documentos de Profesional
Documentos de Cultura
C
C
h>
#include <malloc.h>
#include <stdbool.h>
void read(int ***A, int *m, int *n)
{
int i, j;
printf("Nr. linii: ");
scanf_s("%d", m);
printf("Nr. coloane: ");
scanf_s("%d", n);
*A = (int **)malloc(*m * sizeof(int*));
for (i = 0; i < *m; i++)
(*A)[i] = (int *)malloc(*n * sizeof(int));
printf("Elementele matricii:\n");
for (i = 0; i < *m; i++)
for (j = 0; j < *n; j++)
scanf_s("%d", &(*A)[i][j]);
}
int min_mat(int **A, int m, int n)
{
int i, j, min = A[0][0];
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
if (A[i][j] < min)
min = A[i][j];
return min;
}
void delete_rows_cols(int ***A, int *m, int *n)
{
int i, j, i1, j1;
int min = min_mat(*A, *m, *n);
bool *vrows, *vcols;
vrows = (bool*)calloc(*m, sizeof(bool));
vcols = (bool*)calloc(*n, sizeof(bool));
for (i = 0; i < *m; i++)
for (j = 0; j < *n; j++)
if ((*A)[i][j] == min)
{
vrows[i] = 1;
vcols[j] = 1;
}
// Stergere linii
int dif_r = 0;
for (i = 0; i < *m; i++)
if(vrows[i])
{