Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/11/2015, 08:34
liisubu
 
Fecha de Ingreso: noviembre-2015
Mensajes: 3
Antigüedad: 8 años, 5 meses
Puntos: 0
Información Matrices reemplazo de numeros

Desarrollar un algoritmo en C++ que dado un número entero y una matriz en un archivo de texto plano, cree una nueva matriz donde se reemplacen todos los números mayores al número dado por un uno (1) y todos los menores o iguales por un cero (0).

debo usar bool u otro tipo de dato ??
debo condicionar en la funcion "componentes_matriz" ?
me


#include <iostream>
#include <fstream>
#include <cstdlib>


using namespace std;

int** crear_matriz(int n, int m){
int** matriz = new int*[n];
for(int i = 0; i < n; i++){
matriz[i] = new int[m];
};
return matriz;
};

void liberar_matriz(int** matriz, int n, int m){
for(int i = 0; i < n; i++){
delete[] matriz[i];
};
delete[] matriz;
return;
};

int leer_int(istream& is){
int a;
is >> a;
return a;
};

int** leer_matriz(istream&is, int** x, int n, int m){
for (int i = 0; i < n ; i++){
for (int j = 0; j < m; j++){
x[i][j] = leer_int(is);
};
};
};

int** componentes_matriz (int z, int** x, int n, int m){
int** y = crear_matriz(n,m);
for (int i = 0; i < n ; i++){
for (int j = 0; j < m; j++){
y[i][j] = x[i][j] - z;
};
};
return y;
}

int main()
{
cout << "escriba un numero" << endl;
int z;
cin >> z;
int n=3;
int m=3;
ifstream ifs("matriz.txt");
int** x = crear_matriz(n,m);
x = leer_matriz(ifs, x, n, m);
int** y = componentes_matriz (z,x,n,m);
for (int i = 0; i < n ; i++){
for (int j = 0; j < m; j++){
if (y > 0){
cout << false << '\t';
}else{
cout << true << '\t';
};
};
cout << endl;
};
liberar_matriz(x,n,m);
ifs.close();
return 0;
}