Dev - C++ - Ayuda programa para la facuu

   
Vista:

Ayuda programa para la facuu

Publicado por Fernanda (2 intervenciones) el 24/05/2016 00:26:01
Hola, necesito ayuda con un practico que tengo que presentar para la facu, les dejo el enunciado y el codigo de lo que pude ir haciendo, agradeceria muchisimo su ayuda en los puntos 3(parimpar) y 4(suma de elemntos), creo que el resto esta medianamente bien.


ENUNCIADO:
Realice un programa en C++, con las siguientes características:

1) Se deberán ingresar desde teclado una secuencia de N columnas de N elementos enteros cada una. Los mismos deberán almacenarse en una matriz de N filas por N columnas. M es una constante global con la cual se declara el arreglo, es decir la máxima dimensión. Antes de ingresar los datos se deberá ingresar el valor de N y validar que no supere el valor de M.

Ej: Ingresar N:4. Ingrese datos: 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7

2) La Matriz A deberá imprimirse en pantalla mediante una función imprimirMatriz (int[][], int);
1 5 9 4
2 6 1 5
3 7 2 6
4 8 3 7

3) Una vez cargada la matriz, mediante la función "parimpar", deberá determinar qué cantidad de números en la matriz son pares, que cantidad son impares, y que cantidad son Ceros e imprimir en pantalla los resultados. Esta función, devuelve un 0 si el elemento enviado es 0, un 1 si es impar y un 2 si es par. Prototipo de la función: int parimpar(int);

Ej. Cantidad de elementos pares: 7. Cantidad de elementos impares: 9. Cantidad de elementos nulos: 0.

4) Por ultimo deberá determinar la suma de los elementos mayores que 0 de las filas impares, de cada columna de la matriz y guardarlos en un arreglo V, mediante una función cuyo prototipo será: generarVector (int[], int);

5) El vector V deberá imprimirse en pantalla mediante una función imprimirVector.
Suma de los elementos mayores que cero de cada columna
6 14 4 12

CODIGO FUENTE:
#include<iostream>
using namespace std;

const int M=6; //variable global
void imprimirMatriz (int matriz[M][M] , int cant );
int parimpar(int );
void generarVector (int matriz[M][M], int vector[M], int a);
void imprimirVector(int vector[M], int a);

int main()
{
int N;
int matriz[M][M];
int vector[M]={0,0,0,0,0,0};

cout<<"ingrese la dimension de la matriz, teniendo en cuenta que debe ser cuadrada(NxN)";
cin>>N;

while(N>M || N<0)
{
if(N>M)
{
cout<<"la dimension debe ser menor a 6, vuelva a ingrear"<<endl;
cin>>N;
}
else
{
cout<<"la dimension debe ser positiva, vuelva a ingresar"<<endl;
cin>>N;
}
}

cout<<"ingrese los datos de la matriz de dimension "<<N<<"x"<<N<<endl;

for(int i=0; i<N; i++)
{
cout<<"datos de la columna "<<i<<endl;
for(int j=0; j<N; j++)
{
cin>>matriz[j][i];
}
}

cout<<"la matriz ingresada es :"<<endl;
imprimirMatriz (matriz, N);

generarVector ( matriz, vector, N);

cout<<"suma de los elementos mayores que cero de cada columna :"<<endl;
imprimirVector(vector, N);

cin.ignore(2);
return 0;

}
void imprimirMatriz (int matriz[M][M], int cant)
{
for(int i=0; i<cant; i++)
{
for(int j=0;j<cant; j++)
{
cout<<matriz[i][j]<<" ";
}
cout<<endl;
}
}
int parimpar(int );
{
//NO ENTIENDO DIRECTAMENTE COMO ARRANCAR
}
void generarVector (int matriz[M][M], int vector[M], int a)//LO PUDE HACER PERO PARA TODAS LAS FILAS, CUANDO TRATO DE HACER PARA LAS IMPARES(PONIENDO UN IF) ME SALE CUALQUIER COSA
{
int temporal;
for(int i=0;i<a;i++)
{
temporal=0;

for(int j=0;j<a;j++)
{
temporal=temporal+matriz[j][i];
}
vector[i]=temporal;
}

}
void imprimirVector(int vector[M],int a)
{
for(int i=0;i<a;i++)
{
cout<<vector[i]<<" ";
}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Armando

Ayuda programa para la facuu

Publicado por Armando (3 intervenciones) el 02/06/2016 20:32:59
Y la duda es ......... ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda programa para la facuu

Publicado por Fernanda (2 intervenciones) el 02/06/2016 23:53:22
esta en el segudo renglón del texto (agradeceria muchisimo su ayuda en los puntos 3(parimpar) y 4(suma de elemntos), creo que el resto esta medianamente bien.)
Pero ya lo logre resolver, gracias de todas formas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar