Foros del Web » Programación para mayores de 30 ;) » Programación General »

Matrices en C++ (avance) ayuda plz

Estas en el tema de Matrices en C++ (avance) ayuda plz en el foro de Programación General en Foros del Web. Hola que tal ? soy nuevo en el foro. :D Quisiera q me ayuden con este codigo plz //Diseñar un programa que permita ingresar valores ...
  #1 (permalink)  
Antiguo 07/09/2008, 12:52
 
Fecha de Ingreso: septiembre-2008
Mensajes: 3
Antigüedad: 15 años, 8 meses
Puntos: 0
De acuerdo Matrices en C++ (avance) ayuda plz

Hola que tal ? soy nuevo en el foro. :D Quisiera q me ayuden con este codigo plz

//Diseñar un programa que permita ingresar valores en una
//matriz de 4x4, obteniendo como resultado la suma de la
//diagonal principal y la diagonal secundaria(opcional)
//de esta tambien sacar El mayor y el menor numero en la matriz con sus indices
//adicionalmente sacar el mayor y el menor elemento de filas y colummnas !!

Aqui esta el còdigo que he estado haciendo pero tengo un error logico osea q lo ejecuta normal pero al momento de llegar al mayor elemento x filas y columnas me sale 1.e-1524 etc plz help me :D

#include<iostream.h>
#include<conio.h>
#include<iomanip.h>
void main()
{
const int F=4, C=4;
double num[F][C];
double mayorFILA[F],mayorCOLUMNA[C];
double menorFILA[F], menorCOLUMNA[C];
double sumaP=0, sumaD=0; //diagonal principal y diagona secundaria
int mayorF,mayorC;
int menorF,menorC;
double mayor,menor;

cout<<" M A T R I C E S: D I A G O N A L P R I N C I P A L Y S E C U N D A R I A\n";
cout<<" - - - - - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\n";

cout<<" INGRESE NUMEROS A LA MATRIZ ["<<F<<"x"<<C<<"] :\n";
cout<<" ------- ------- - -- ------ ----- -\n\n";
for(int i=0; i<F; i++)
{
for(int j=0; j<C; j++)
{
cout<<" Ingrese numeros en la matriz [ "<<(i+1)<<" ],[ "<<(j+1)<<" ] : ";
cin>>num[i][j];
}
cout<<endl;
}

//diagonal principal

for(int k=0; k<F; k++)
{
for(int l=0; l<C; l++)
{
if(k==l) // aqui igualamos para que la matriz valla de forma diagonal principal
{ // y que mejor forma de hacerlo asi !!
sumaP=sumaP+num[k][l];
}
}
}

//diagonal secundaria

for(int m=0; m<F; m++)
{
for(int n=0; n<C; n++)
{
if(m==(C-n-1)) //ejemplo si estamos en la Fila 1==(4-2-1) // ponemos -1 ya q cmo sabemos la matriz cuenta desde 0
{ // seria cierta la condicion entonces
sumaD=sumaD+num[m][n]; //sumamos !!y la variable sumaD toma el numero y asi
} //sucesivamente hasta poder sumar todo
}
}
//El mayor y el menor numero en la matriz con sus indices (osea donde se encuentran)!!
menor=num[0][0];
mayor=num[0][0];

for(int q=0; q<F; q++)
{
for(int r=0; r<C; r++)
{
if(num[q][r]>mayor)
{
mayor=num[q][r];
mayorF=q+1;
mayorC=r+1;
}
else
if(num[q][r]<menor)
{
menor=num[q][r];
menorF=q+1;
menorC=r+1;
}
}
}
//Aqui vamos a sacar el mayor y el menor elemento de filas y colummnas !! XD
mayorFILA[0]=num[0][0]; //IGUALANDO VARIABLES
mayorCOLUMNA[0]=num[0][0]; //IGUALANDO VARIABLES

menorFILA[0]=num[0][0];
menorCOLUMNA[0]=num[0][0];

for(int s=0; s<F; s++) // por fila
{
for(int t=0; t<C; t++)
{
if(num[s][t]>mayor[s])
{
mayorFILA=num[s][t]; //mayor por fila
}
else
if(num[s][t]<menor[s])
{
menorFILA=menor[s][t]; //menor por fila
}
}
}
//Ahora vamos x las columnas :D

for(int u=0; u<C; u++)
{
for(int v=0; v<F; v++)
{
if(num[v][u]>mayorCOLUMNA[u])
{
mayorCOLUMNA=num[v][u];
}
else
if(num[v][u]<menorCOLUMNA[u])
{
menorCOLUMNA=num[v][u];
}
}
}


clrscr(); //se va pa otra hoja !! XD

//hacemos un for para botar los numeros para que el usuario pueda
//ver q esto es real :D XD
cout<<" R E S U M E N\n";
cout<<" - - - - - - -\n";




for(int o=0; o<F; o++)
{
for(int p=0; p<C; p++)
{
cout<<setw(8)<<num[o][p];
}
cout<<endl;
}
cout<<endl;
cout<<"------------------------------------------------------------------------------\n\n";


cout<<"\n La suma de la diagonal principal es.....: "<<sumaP;
cout<<"\n La suma de la diagonal secuandaria es...: "<<sumaD;

cout<<"\n El mayor elemento de la matriz es.......: "<<mayor<<" se encuentra...: [ "<<mayorF<<","<<mayorC<<"]";
cout<<"\n EL menor elemento de la matriz es.......: "<<menor<<" se encuentra...: [ "<<menorF<<","<<menorC<<"]";

for(int w=0; w<F; w++)
{cout<<"\n El mayor elemento de la FILA ["<<(w+1)<<"] es...: "<<mayorFILA[w];}

for(int x=0; x<C; x++)
{cout<<"\n El mayor elemento de la COLUMNA ["<<(x+1)<<"] es...: "<<mayorCOLUMNA[x];}

cout<<"\n\n";

for(int y=0; y<F; y++)
{cout<<"\n El menor elemento de la Fila ["<<(y+1)<<"] es...: "<<menorFILA[y];}

for(int z=0; z<C; z++)
{cout<<"\n EL menor elemento de la colummna ["<<(z+1)<<"] es ...:"<<menorCOLUMNA[z];}


}


APreciaria mucha su ayuda gracias :.-)
  #2 (permalink)  
Antiguo 08/09/2008, 01:15
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: Matrices en C++ (avance) ayuda plz

Depura tu tarea y las preguntas de C/C++ - no tareas - en el subforo correspondiente por favor.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:17.