#1 Problema con funcion
Hola gente, recien estoy comenzando con ejercicios basicos de c/c++ en la facu y tengo un problemita al querer hacer una funcion que devuelva un vector con la sumatoria de las columnas de una matriz (se entiende?)
Pego el codigo a ver si alguien me puede dar una manito porque ya van varias horas y no le encuentro la vuelta. Lo que esta subrayado es la parte del codigo que me tira error (cannot convert int to int)
Desde ya mil gracias.
#include <conio.h>
#include <iostream.h>
void cargarMatriz(int [3][3]);
void imprimirColumna(int [3][3]);
int calcularPromedio(int [3][3]);
int sumarColumna(int [3][3], int []);
void buscarMayor(int [3][3], int []);
main()
{
int matrizCargada[3][3];
int vec[3];
int i;
int vecMax[3];
cargarMatriz(matrizCargada);
imprimirColumna(matrizCargada);
cout<<"El Promedio de los datos ingresados es: "<<calcularPromedio(matrizCargada)<<endl;
sumarColumna(matrizCargada,vec);
for (int j=0; j<3; j++){
cout<<"Para la columna "<<j<<" la suma es: "<<vec[j]<<endl;
}
buscarMayor(matrizCargada,vecMax);
for (i=0; i<3; i++){
cout<<"El mayor de la fila: "<<i<<" es: "<<vecMax[i]<<endl;
}
getch();
return 0;
}
//funcion para cargar la matriz
void cargarMatriz(int matriz[3][3])
{
int num, i, j;
cout<<"Ingrese los numeros para la matriz"<<endl;
for(i=0; i<3; i++){
for(j=0; j<3; j++){
cin>>num;
matriz[i][j]=num;
}
}
}
//funcion que imprime por columna
void imprimirColumna(int imprimePorColumna[3][3])
{int i,j;
for(j=0; j<3; j++){
for(i=0; i<3; i++){
cout<<"En la columna "<<j<<" esta el dato "<<imprimePorColumna[i][j]<<endl;
}
}
}
//funcion que calcula el promedio
int calcularPromedio(int matrizPromedio[3][3])
{
int sumador=0;
int i, j;
long promedio, result;
for(i=0; i<3; i++){
for(j=0; j<3; j++){
sumador=sumador+matrizPromedio[i][j];
}
}
promedio=i*j;
result=sumador/promedio;
return result;
}
//funcion que genera e imprime un vector con la suma de cada columna
int sumarColumna(int sumaDeColumnas[3][3], int vector[])
{
int suma;
for(int j=0; j<3; j++){
suma=0;
for(int i=0; i<3; i++){
suma=suma+sumaDeColumnas[i][j];
}
vector[i]=suma;
}
return vector;
}
//FUNCION QUE BUSCA MAYOR POR FILA
void buscarMayor(int matriz[3][3],int v[])
{
int mayor;
for(int I=0; I<3; I++){
mayor=matriz[i][0];
for(int J=0; J<3; J++){
if(mayor<matriz[i][J]){
mayor=matriz[i][J];
}
}
v[i]=mayor;
}
}
Pego el codigo a ver si alguien me puede dar una manito porque ya van varias horas y no le encuentro la vuelta. Lo que esta subrayado es la parte del codigo que me tira error (cannot convert int to int)
Desde ya mil gracias.
#include <conio.h>
#include <iostream.h>
void cargarMatriz(int [3][3]);
void imprimirColumna(int [3][3]);
int calcularPromedio(int [3][3]);
int sumarColumna(int [3][3], int []);
void buscarMayor(int [3][3], int []);
main()
{
int matrizCargada[3][3];
int vec[3];
int i;
int vecMax[3];
cargarMatriz(matrizCargada);
imprimirColumna(matrizCargada);
cout<<"El Promedio de los datos ingresados es: "<<calcularPromedio(matrizCargada)<<endl;
sumarColumna(matrizCargada,vec);
for (int j=0; j<3; j++){
cout<<"Para la columna "<<j<<" la suma es: "<<vec[j]<<endl;
}
buscarMayor(matrizCargada,vecMax);
for (i=0; i<3; i++){
cout<<"El mayor de la fila: "<<i<<" es: "<<vecMax[i]<<endl;
}
getch();
return 0;
}
//funcion para cargar la matriz
void cargarMatriz(int matriz[3][3])
{
int num, i, j;
cout<<"Ingrese los numeros para la matriz"<<endl;
for(i=0; i<3; i++){
for(j=0; j<3; j++){
cin>>num;
matriz[i][j]=num;
}
}
}
//funcion que imprime por columna
void imprimirColumna(int imprimePorColumna[3][3])
{int i,j;
for(j=0; j<3; j++){
for(i=0; i<3; i++){
cout<<"En la columna "<<j<<" esta el dato "<<imprimePorColumna[i][j]<<endl;
}
}
}
//funcion que calcula el promedio
int calcularPromedio(int matrizPromedio[3][3])
{
int sumador=0;
int i, j;
long promedio, result;
for(i=0; i<3; i++){
for(j=0; j<3; j++){
sumador=sumador+matrizPromedio[i][j];
}
}
promedio=i*j;
result=sumador/promedio;
return result;
}
//funcion que genera e imprime un vector con la suma de cada columna
int sumarColumna(int sumaDeColumnas[3][3], int vector[])
{
int suma;
for(int j=0; j<3; j++){
suma=0;
for(int i=0; i<3; i++){
suma=suma+sumaDeColumnas[i][j];
}
vector[i]=suma;
}
return vector;
}
//FUNCION QUE BUSCA MAYOR POR FILA
void buscarMayor(int matriz[3][3],int v[])
{
int mayor;
for(int I=0; I<3; I++){
mayor=matriz[i][0];
for(int J=0; J<3; J++){
if(mayor<matriz[i][J]){
mayor=matriz[i][J];
}
}
v[i]=mayor;
}
}
0