Estoy haciendo un programa que lea una matriz (un arreglo bidimensional), la cual el usuario introduce las dimensiones de dicha matriz, no pudiendo superar cierto limite establecido y luego tipea los valores de la misma. Y luego con una función, calcular un promedio de los elementos en las filas pares.
El leer y promediar serian funciones creadas por mi. Tambien crear una funcion que muestre , es decir que imprima, la matriz.
Todo va muy bien, excepto por algunos errores que no se a que se deben.
Aquí la linea de codigos:
Cita:
Bien, el problema esencial que tengo es que, yo necesito que las dimensiones del arreglo las escriba el usuario. pero cuando declaro "matriz [][]" me tira un error :#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
const int FILMAX = 10;
const int COLMAX = 10;
int fil, col;
int leerdatos (int , int);
int promediopares (int [][]);
int main ()
{
int matriz [][10];
do
{
cout << "Por favor, ingrese las filas que tiene su matriz (Recuerde que no debe exceder las 10 filas)" << endl;
cin >> fil;
cout << "Ahora ingrese las columnas (Recuerde que no debe exceder las 10 columnas)" << endl;
cin >> col;
}
while (fil > FILMAX || col > COLMAX);
leerdatos (fil, col); // En teoria ya tengo los datos leidos y esta funcion me devuelve matriz[fil][col]
//Ahora se quiere hacer un promedio de los elementos de las filas pares
system ("cls");
cout << "Ahora se hara un promedio de los elementos de las filas pares, es decir de las filas: " ;
for (int i = 0; i <= fil; i = i + 2) using obsolet binding at "i"
cout << i << " , " ;
promediopares (matriz[fil][col]); // realiza el promedio de las filas pares
cout << promediopares(matriz[fil][col]);
system ("pause");
return 0;
}
int leerdatos (int fil, int col) // Lee los valores de la matriz
{
int matriz[fil][col];
cout << "Ingrese por favor los valores de su matriz , ingreselos POR COLUMNA" << endl;
for (int i = 0; i < col; i++)
for (int j = 0; j < fil; j++)
cin >> matriz [i][j];
return matriz[fil][col];
}
int promediopares (int matriz[][])
{
int pozo = 0; // En esta variable se acumulan las sumas de cada matriz
int prom = 0 ; // Aqui se almacenara el promedio;
for (int i = 0; i < fil ; i = i + 2)
for (int j = 0; j < col ; j++)
pozo = pozo + matriz[i][j]; "matriz" in
prom = pozo / ( (i/2) * j); // (i/2 * j) representa la cantidad de elementos totales que se utilizaron name lookup for "i"changed for new ISO for scoping
return prom;
}
#include<cmath>
#include<iomanip>
using namespace std;
const int FILMAX = 10;
const int COLMAX = 10;
int fil, col;
int leerdatos (int , int);
int promediopares (int [][]);
int main ()
{
int matriz [][10];
do
{
cout << "Por favor, ingrese las filas que tiene su matriz (Recuerde que no debe exceder las 10 filas)" << endl;
cin >> fil;
cout << "Ahora ingrese las columnas (Recuerde que no debe exceder las 10 columnas)" << endl;
cin >> col;
}
while (fil > FILMAX || col > COLMAX);
leerdatos (fil, col); // En teoria ya tengo los datos leidos y esta funcion me devuelve matriz[fil][col]
//Ahora se quiere hacer un promedio de los elementos de las filas pares
system ("cls");
cout << "Ahora se hara un promedio de los elementos de las filas pares, es decir de las filas: " ;
for (int i = 0; i <= fil; i = i + 2) using obsolet binding at "i"
cout << i << " , " ;
promediopares (matriz[fil][col]); // realiza el promedio de las filas pares
cout << promediopares(matriz[fil][col]);
system ("pause");
return 0;
}
int leerdatos (int fil, int col) // Lee los valores de la matriz
{
int matriz[fil][col];
cout << "Ingrese por favor los valores de su matriz , ingreselos POR COLUMNA" << endl;
for (int i = 0; i < col; i++)
for (int j = 0; j < fil; j++)
cin >> matriz [i][j];
return matriz[fil][col];
}
int promediopares (int matriz[][])
{
int pozo = 0; // En esta variable se acumulan las sumas de cada matriz
int prom = 0 ; // Aqui se almacenara el promedio;
for (int i = 0; i < fil ; i = i + 2)
for (int j = 0; j < col ; j++)
pozo = pozo + matriz[i][j]; "matriz" in
prom = pozo / ( (i/2) * j); // (i/2 * j) representa la cantidad de elementos totales que se utilizaron name lookup for "i"changed for new ISO for scoping
return prom;
}
declaration of 'matriz' as multidimensional array must have bounds for all dimensions except the first
Realmente estoy medio perdido si alguien puede darme una mano o decirme que estoy haciendo mal. Todo funcionaba bien hasta que puse la funcion de promedio. Ahi me tiro los errores!