Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema sumar arrays

Estas en el tema de Problema sumar arrays en el foro de C/C++ en Foros del Web. Hola quiero hacer una tabla de 5 x 5 y sumar las filas. Por aora puedo introducir los int en los arrays el problema esque ...
  #1 (permalink)  
Antiguo 05/07/2011, 09:10
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Exclamación Problema sumar arrays

Hola quiero hacer una tabla de 5 x 5 y sumar las filas. Por aora puedo introducir los int en los arrays el problema esque al sumarlos, aparecen resultados que no son y aveces se mezclan los resultados nose lo que pasa.

Código:
#include <iostream>
using namespace std;

char Confirmar[500];
int tabla[5][5];
int Sumafila;
int Sumafilados;
int Sumafilatres;
int Sumafilacuatro;
int Sumafilacinco;

int main()
{
cout << "Tabla 5x5:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << endl;
cout << " 2      |" << endl;
cout << " 3      |" << endl;
cout << " 4      |" << endl;
cout << " 5      |" << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Introduce los 5 numeros de la primera fila separados por espacios." << endl;
cin >> tabla[1][1] >> tabla[1][2] >> tabla[1][3] >> tabla[1][4] >> tabla[1][5];
Sumafila = tabla[1][1] + tabla[1][2] + tabla[1][3] + tabla[1][4] + tabla[1][5];


cout << "Introduce los 5 numeros de la segunda fila separados por espacios." << endl;
cin >> tabla[2][1] >> tabla[2][2] >> tabla[2][3] >> tabla[2][4] >> tabla[2][5];
Sumafilados= tabla[2][1] + tabla[2][2] + tabla[2][3] + tabla[2][4] + tabla[2][5];


cout << "Introduce los 5 numeros de la tercera fila separados por espacios." << endl;
cin >> tabla[3][1] >> tabla[3][2] >> tabla[3][3] >> tabla[3][4] >> tabla[3][5];
Sumafilatres = tabla[3][1] + tabla[3][2] + tabla[3][3] + tabla[3][4] + tabla[3][5];


cout << "Introduce los 5 numeros de la cuarta fila separados por espacios." << endl;
cin >> tabla[4][1] >> tabla[4][2] >> tabla[4][3] >> tabla[4][4] >> tabla[4][5];
Sumafilacuatro = tabla[4][1] + tabla[4][2] + tabla[4][3] + tabla[4][4] + tabla[4][5];


cout << "Introduce los 5 numeros de la quinta fila separados por espacios." << endl;
cin >> tabla[5][1] >> tabla[5][2] >> tabla[5][3] >> tabla[5][4] >> tabla[5][5];
Sumafilacinco = tabla[5][1] + tabla[5][2] + tabla[5][3] + tabla[5][4] + tabla[5][5];

cout << "Tabla 5x5 completa:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << tabla[1][1] <<"       "<< tabla[1][2] <<"        "<< tabla[1][3] <<"        "<< tabla[1][4] <<"       "<< tabla[1][5] << "| " << Sumafila << endl;
cout << " 2      |" << tabla[2][1] <<"       "<< tabla[2][2] <<"        "<< tabla[2][3] <<"        "<< tabla[2][4] <<"       "<< tabla[2][5] << "| " << Sumafilados << endl;
cout << " 3      |" << tabla[3][1] <<"       "<< tabla[3][2] <<"        "<< tabla[3][3] <<"        "<< tabla[3][4] <<"       "<< tabla[3][5] << "| " << Sumafilatres << endl;
cout << " 4      |" << tabla[4][1] <<"       "<< tabla[4][2] <<"        "<< tabla[4][3] <<"        "<< tabla[4][4] <<"       "<< tabla[4][5] << "| " << Sumafilacuatro << endl;
cout << " 5      |" << tabla[5][1] <<"       "<< tabla[5][2] <<"        "<< tabla[5][3] <<"        "<< tabla[5][4] <<"       "<< tabla[5][5] << "| " << Sumafilacinco << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Escribe algo para salir" << endl;
cin >> Confirmar;
}
Porfavor inviertan un pco de su tiempo en ayudar a un nobato xD
  #2 (permalink)  
Antiguo 05/07/2011, 09:53
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: Problema sumar arrays

Recuerda que C++ las matrices y arreglos empiezan en 0, si declaras algo un arreglo de 5 posiciones, seria {0,1,2,3,4}, intentan cambiar ese orden haber si te sale..!!
  #3 (permalink)  
Antiguo 05/07/2011, 09:57
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: Problema sumar arrays

Cita:
Iniciado por baker1562 Ver Mensaje
Recuerda que C++ las matrices y arreglos empiezan en 0, si declaras algo un arreglo de 5 posiciones, seria {0,1,2,3,4}, intentan cambiar ese orden haber si te sale..!!
No disculpa no era eso lo que iba a poner, en las filas donde dice que ingrese un valor, que valor tengo que ingresar, es que me confunde ese cuadro y si es una tabla de multiplicar, porque suma?
  #4 (permalink)  
Antiguo 05/07/2011, 10:03
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 7 meses
Puntos: 228
Respuesta: Problema sumar arrays

Tu problema es es que los indices empiezan desde 0, y en tu caso seria hasta 4.
int tabla[5];
Eso quiere decir uqe va tener 5 elementos. 0,1,2,3,4.

Simplemente resta uno a todo los indices. O una solucion feo pero para uqe pruebes define la tabla de 6 X 6. (no recomendado)

PD: En ningun momento menciono tabla de multiplicar.
  #5 (permalink)  
Antiguo 05/07/2011, 10:11
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Problema sumar arrays

Cita:
Iniciado por sam90 Ver Mensaje
Tu problema es es que los indices empiezan desde 0, y en tu caso seria hasta 4.
int tabla[5];
Eso quiere decir uqe va tener 5 elementos. 0,1,2,3,4.

Simplemente resta uno a todo los indices. O una solucion feo pero para uqe pruebes define la tabla de 6 X 6. (no recomendado)

PD: En ningun momento menciono tabla de multiplicar.
JAJA aora que caigo era verdad XDDD. Y no son tablas de multiplicar, son tablas comunes, como si fueran de bases de datos.
Muchisimas gracias y perdon por hacerle perder el timepo por esa tonteria =(-
  #6 (permalink)  
Antiguo 05/07/2011, 10:17
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: Problema sumar arrays

Cita:
Iniciado por sam90 Ver Mensaje
Tu problema es es que los indices empiezan desde 0, y en tu caso seria hasta 4.
int tabla[5];
Eso quiere decir uqe va tener 5 elementos. 0,1,2,3,4.

Simplemente resta uno a todo los indices. O una solucion feo pero para uqe pruebes define la tabla de 6 X 6. (no recomendado)

PD: En ningun momento menciono tabla de multiplicar.
me confundio ese 5x5
  #7 (permalink)  
Antiguo 05/07/2011, 10:23
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Exclamación Respuesta: Problema sumar arrays

he echo lo que me habeis dicho pero sigue sin funcionar O_o mira aqui os dejo un screen

Código:
#include <iostream>
using namespace std;
//COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS
//SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA

char Confirmar[500];
int tabla[5][5];
int Sumafila;
int Sumafilados;
int Sumafilatres;
int Sumafilacuatro;
int Sumafilacinco;

int main()
{
cout << "Programa dessarollado por Jesus Martin Berlanga." << endl;
cout << "COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS" << endl;
cout << "SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA" << endl;
cout << "Tabla 5x5:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << endl;
cout << " 2      |" << endl;
cout << " 3      |" << endl;
cout << " 4      |" << endl;
cout << " 5      |" << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Introduce los 5 numeros de la primera fila separados por espacios." << endl;
cin >> tabla[0][0] >> tabla[0][1] >> tabla[0][2] >> tabla[0][3] >> tabla[0][4];
Sumafila = tabla[0][0] + tabla[0][1] + tabla[0][2] + tabla[0][3] + tabla[0][4];


cout << "Introduce los 5 numeros de la segunda fila separados por espacios." << endl;
cin >> tabla[1][0] >> tabla[1][1] >> tabla[1][2] >> tabla[1][3] >> tabla[1][4];
Sumafilados= tabla[1][0] + tabla[1][1] + tabla[1][2] + tabla[1][3] + tabla[1][4];


cout << "Introduce los 5 numeros de la tercera fila separados por espacios." << endl;
cin >> tabla[2][0] >> tabla[2][1] >> tabla[2][2] >> tabla[2][3] >> tabla[2][4];
Sumafilatres = tabla[2][0] + tabla[2][1] + tabla[2][2] + tabla[2][3] + tabla[2][4];


cout << "Introduce los 5 numeros de la cuarta fila separados por espacios." << endl;
cin >> tabla[3][0] >> tabla[3][1] >> tabla[3][2] >> tabla[3][3] >> tabla[3][4];
Sumafilacuatro = tabla[3][0] + tabla[3][1] + tabla[3][2] + tabla[3][3] + tabla[3][4];


cout << "Introduce los 5 numeros de la quinta fila separados por espacios." << endl;
cin >> tabla[4][0] >> tabla[5][1] >> tabla[5][2] >> tabla[5][3] >> tabla[5][4];
Sumafilacinco = tabla[4][0] + tabla[5][1] + tabla[5][2] + tabla[5][3] + tabla[5][4];

cout << "Tabla 5x5 completa:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << tabla[0][0] <<"       "<< tabla[0][1] <<"        "<< tabla[0][2] <<"        "<< tabla[0][3] <<"       "<< tabla[0][4] << "| " << Sumafila << endl;
cout << " 2      |" << tabla[1][0] <<"       "<< tabla[1][1] <<"        "<< tabla[1][2] <<"        "<< tabla[1][3] <<"       "<< tabla[1][4] << "| " << Sumafilados << endl;
cout << " 3      |" << tabla[2][0] <<"       "<< tabla[2][1] <<"        "<< tabla[2][2] <<"        "<< tabla[2][3] <<"       "<< tabla[2][4] << "| " << Sumafilatres << endl;
cout << " 4      |" << tabla[3][0] <<"       "<< tabla[3][1] <<"        "<< tabla[3][2] <<"        "<< tabla[3][3] <<"       "<< tabla[3][4] << "| " << Sumafilacuatro << endl;
cout << " 5      |" << tabla[4][0] <<"       "<< tabla[4][1] <<"        "<< tabla[4][2] <<"        "<< tabla[4][3] <<"       "<< tabla[4][4] << "| " << Sumafilacinco << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Escribe algo para salir" << endl;
cin >> Confirmar;
}


Uploaded with ImageShack.us
  #8 (permalink)  
Antiguo 05/07/2011, 10:27
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Exclamación Respuesta: Problema sumar arrays

Cita:
Iniciado por berserkerhacker Ver Mensaje
he echo lo que me habeis dicho pero sigue sin funcionar O_o mira aqui os dejo un screen
Le he añadido 1 al espacio del array y funciona:
Aqui el codigo final XD:
Código:
#include <iostream>
using namespace std;

char Confirmar[500];
int tabla[6][6];
int Sumafila;
int Sumafilados;
int Sumafilatres;
int Sumafilacuatro;
int Sumafilacinco;

int main()
{
cout << "Tabla 5x5:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << endl;
cout << " 2      |" << endl;
cout << " 3      |" << endl;
cout << " 4      |" << endl;
cout << " 5      |" << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Introduce los 5 numeros de la primera fila separados por espacios." << endl;
cin >> tabla[0][0] >> tabla[0][1] >> tabla[0][2] >> tabla[0][3] >> tabla[0][4];
Sumafila = tabla[0][0] + tabla[0][1] + tabla[0][2] + tabla[0][3] + tabla[0][4];


cout << "Introduce los 5 numeros de la segunda fila separados por espacios." << endl;
cin >> tabla[1][0] >> tabla[1][1] >> tabla[1][2] >> tabla[1][3] >> tabla[1][4];
Sumafilados= tabla[1][0] + tabla[1][1] + tabla[1][2] + tabla[1][3] + tabla[1][4];


cout << "Introduce los 5 numeros de la tercera fila separados por espacios." << endl;
cin >> tabla[2][0] >> tabla[2][1] >> tabla[2][2] >> tabla[2][3] >> tabla[2][4];
Sumafilatres = tabla[2][0] + tabla[2][1] + tabla[2][2] + tabla[2][3] + tabla[2][4];


cout << "Introduce los 5 numeros de la cuarta fila separados por espacios." << endl;
cin >> tabla[3][0] >> tabla[3][1] >> tabla[3][2] >> tabla[3][3] >> tabla[3][4];
Sumafilacuatro = tabla[3][0] + tabla[3][1] + tabla[3][2] + tabla[3][3] + tabla[3][4];


cout << "Introduce los 5 numeros de la quinta fila separados por espacios." << endl;
cin >> tabla[4][0] >> tabla[4][1] >> tabla[4][2] >> tabla[4][3] >> tabla[4][4];
Sumafilacinco = tabla[4][0] + tabla[4][1] + tabla[4][2] + tabla[4][3] + tabla[4][4];

cout << "Tabla 5x5 completa:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << tabla[0][0] <<"       "<< tabla[0][1] <<"        "<< tabla[0][2] <<"        "<< tabla[0][3] <<"       "<< tabla[0][4] << "| " << Sumafila << endl;
cout << " 2      |" << tabla[1][0] <<"       "<< tabla[1][1] <<"        "<< tabla[1][2] <<"        "<< tabla[1][3] <<"       "<< tabla[1][4] << "| " << Sumafilados << endl;
cout << " 3      |" << tabla[2][0] <<"       "<< tabla[2][1] <<"        "<< tabla[2][2] <<"        "<< tabla[2][3] <<"       "<< tabla[2][4] << "| " << Sumafilatres << endl;
cout << " 4      |" << tabla[3][0] <<"       "<< tabla[3][1] <<"        "<< tabla[3][2] <<"        "<< tabla[3][3] <<"       "<< tabla[3][4] << "| " << Sumafilacuatro << endl;
cout << " 5      |" << tabla[4][0] <<"       "<< tabla[4][1] <<"        "<< tabla[4][2] <<"        "<< tabla[4][3] <<"       "<< tabla[4][4] << "| " << Sumafilacinco << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Escribe algo para salir" << endl;
cin >> Confirmar;
}
La clave ha sido:
Código:
int tabla[6][6];
Un saludo y gracias a todos ;)
  #9 (permalink)  
Antiguo 05/07/2011, 10:45
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Exclamación Respuesta: Problema sumar arrays

HOLA TENGO OTRO PROBLEMA Y ES QUE NO SE PUEDEN SUMAR LAS COLUMNAS AORA... joe ke mala suerte arreglo lo de las filas y no funcionan las columnas xD

Código:
#include <iostream>
using namespace std;

char Confirmar[500];
int tabla[6][6];
int Sumafila;
int Sumafilados;
int Sumafilatres;
int Sumafilacuatro;
int Sumafilacinco;
int Sumacolumna1;
int Sumacolumna2;
int Sumacolumna3;
int Sumacolumna4;
int Sumacolumna5;

int main()
{
cout << "Programa dessarollado por Jesus Martin Berlanga." << endl;
cout << "COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS" << endl;
cout << "SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA" << endl;
cout << "Tabla 5x5:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << endl;
cout << " 2      |" << endl;
cout << " 3      |" << endl;
cout << " 4      |" << endl;
cout << " 5      |" << endl;
cout << "        +-----------------------------------+" << endl;

cout << "Introduce los 5 numeros de la primera fila separados por espacios." << endl;
cin >> tabla[0][0] >> tabla[0][1] >> tabla[0][2] >> tabla[0][3] >> tabla[0][4];
Sumafila = tabla[0][0] + tabla[0][1] + tabla[0][2] + tabla[0][3] + tabla[0][4];
Sumacolumna1 = tabla[0][0] + tabla[1][0] + tabla[2][0] + tabla[3][0] + tabla[4][0];


cout << "Introduce los 5 numeros de la segunda fila separados por espacios." << endl;
cin >> tabla[1][0] >> tabla[1][1] >> tabla[1][2] >> tabla[1][3] >> tabla[1][4];
Sumafilados= tabla[1][0] + tabla[1][1] + tabla[1][2] + tabla[1][3] + tabla[1][4];
Sumacolumna2 = tabla[0][1] + tabla[1][1] + tabla[2][1] + tabla[3][1] + tabla[4][1];


cout << "Introduce los 5 numeros de la tercera fila separados por espacios." << endl;
cin >> tabla[2][0] >> tabla[2][1] >> tabla[2][2] >> tabla[2][3] >> tabla[2][4];
Sumafilatres = tabla[2][0] + tabla[2][1] + tabla[2][2] + tabla[2][3] + tabla[2][4];
Sumacolumna3 = tabla[0][2] + tabla[1][2] + tabla[2][2] + tabla[3][2] + tabla[4][2];


cout << "Introduce los 5 numeros de la cuarta fila separados por espacios." << endl;
cin >> tabla[3][0] >> tabla[3][1] >> tabla[3][2] >> tabla[3][3] >> tabla[3][4];
Sumafilacuatro = tabla[3][0] + tabla[3][1] + tabla[3][2] + tabla[3][3] + tabla[3][4];
Sumacolumna4 = tabla[0][3] + tabla[1][3] + tabla[2][3] + tabla[3][3] + tabla[4][3];


cout << "Introduce los 5 numeros de la quinta fila separados por espacios." << endl;
cin >> tabla[4][0] >> tabla[4][1] >> tabla[4][2] >> tabla[4][3] >> tabla[4][4];
Sumafilacinco = tabla[4][0] + tabla[4][1] + tabla[4][2] + tabla[4][3] + tabla[4][4];
Sumacolumna5 = tabla[0][4] + tabla[1][4] + tabla[2][4] + tabla[3][4] + tabla[4][4];



cout << "Tabla 5x5 completa:" << endl;
cout << "        1        2        3        4        5" << endl;
cout << "        +-----------------------------------+" << endl;
cout << " 1      |" << tabla[0][0] <<"       "<< tabla[0][1] <<"        "<< tabla[0][2] <<"        "<< tabla[0][3] <<"       "<< tabla[0][4] << "| " << Sumafila << endl;
cout << " 2      |" << tabla[1][0] <<"       "<< tabla[1][1] <<"        "<< tabla[1][2] <<"        "<< tabla[1][3] <<"       "<< tabla[1][4] << "| " << Sumafilados << endl;
cout << " 3      |" << tabla[2][0] <<"       "<< tabla[2][1] <<"        "<< tabla[2][2] <<"        "<< tabla[2][3] <<"       "<< tabla[2][4] << "| " << Sumafilatres << endl;
cout << " 4      |" << tabla[3][0] <<"       "<< tabla[3][1] <<"        "<< tabla[3][2] <<"        "<< tabla[3][3] <<"       "<< tabla[3][4] << "| " << Sumafilacuatro << endl;
cout << " 5      |" << tabla[4][0] <<"       "<< tabla[4][1] <<"        "<< tabla[4][2] <<"        "<< tabla[4][3] <<"       "<< tabla[4][4] << "| " << Sumafilacinco << endl;
cout << "        +-----------------------------------+" << endl;
cout << "        " << Sumacolumna1 << "        " << Sumacolumna2 << "        " << Sumacolumna3 << "        " << Sumacolumna4 << "        " << Sumacolumna5 << endl;
cout << endl;

cout << "Escribe algo para salir" << endl;
cin >> Confirmar;
}
Es como si se multiplicase el 1º de la columna con el 2º.
  #10 (permalink)  
Antiguo 05/07/2011, 11:03
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: Problema sumar arrays

lo hice asi y me salio, pon el calculo de columnas hasta el final, por creo ( eso pienso yo), que a la hora de hacer la sumatoria aun no se han introducido las otras columnas para que muestre el resultado, la ultima si daba por que en ese instante ya estaban todos los datos en memoria
Código C++:
Ver original
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. char Confirmar[500];
  5. int tabla[6][6];
  6. int Sumafila;
  7. int Sumafilados;
  8. int Sumafilatres;
  9. int Sumafilacuatro;
  10. int Sumafilacinco;
  11. int Sumacolumna1;
  12. int Sumacolumna2;
  13. int Sumacolumna3;
  14. int Sumacolumna4;
  15. int Sumacolumna5;
  16.  
  17. int main()
  18. {
  19. cout << "Programa dessarollado por Jesus Martin Berlanga." << endl;
  20. cout << "COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS" << endl;
  21. cout << "SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA" << endl;
  22. cout << "Tabla 5x5:" << endl;
  23. cout << "        1        2        3        4        5" << endl;
  24. cout << "        +-----------------------------------+" << endl;
  25. cout << " 1      |" << endl;
  26. cout << " 2      |" << endl;
  27. cout << " 3      |" << endl;
  28. cout << " 4      |" << endl;
  29. cout << " 5      |" << endl;
  30. cout << "        +-----------------------------------+" << endl;
  31.  
  32. cout << "Introduce los 5 numeros de la primera fila separados por espacios." << endl;
  33. cin >> tabla[0][0] >> tabla[0][1] >> tabla[0][2] >> tabla[0][3] >> tabla[0][4];
  34. Sumafila = tabla[0][0] + tabla[0][1] + tabla[0][2] + tabla[0][3] + tabla[0][4];
  35.  
  36.  
  37.  
  38. cout << "Introduce los 5 numeros de la segunda fila separados por espacios." << endl;
  39. cin >> tabla[1][0] >> tabla[1][1] >> tabla[1][2] >> tabla[1][3] >> tabla[1][4];
  40. Sumafilados= tabla[1][0] + tabla[1][1] + tabla[1][2] + tabla[1][3] + tabla[1][4];
  41.  
  42.  
  43.  
  44. cout << "Introduce los 5 numeros de la tercera fila separados por espacios." << endl;
  45. cin >> tabla[2][0] >> tabla[2][1] >> tabla[2][2] >> tabla[2][3] >> tabla[2][4];
  46. Sumafilatres = tabla[2][0] + tabla[2][1] + tabla[2][2] + tabla[2][3] + tabla[2][4];
  47.  
  48.  
  49.  
  50. cout << "Introduce los 5 numeros de la cuarta fila separados por espacios." << endl;
  51. cin >> tabla[3][0] >> tabla[3][1] >> tabla[3][2] >> tabla[3][3] >> tabla[3][4];
  52. Sumafilacuatro = tabla[3][0] + tabla[3][1] + tabla[3][2] + tabla[3][3] + tabla[3][4];
  53.  
  54.  
  55.  
  56. cout << "Introduce los 5 numeros de la quinta fila separados por espacios." << endl;
  57. cin >> tabla[4][0] >> tabla[4][1] >> tabla[4][2] >> tabla[4][3] >> tabla[4][4];
  58. Sumafilacinco = tabla[4][0] + tabla[4][1] + tabla[4][2] + tabla[4][3] + tabla[4][4];
  59.  
  60.  
  61. Sumacolumna1 = tabla[0][0] + tabla[1][0] + tabla[2][0] + tabla[3][0] + tabla[4][0];
  62. Sumacolumna2 = tabla[0][1] + tabla[1][1] + tabla[2][1] + tabla[3][1] + tabla[4][1];
  63. Sumacolumna3 = tabla[0][2] + tabla[1][2] + tabla[2][2] + tabla[3][2] + tabla[4][2];
  64. Sumacolumna4 = tabla[0][3] + tabla[1][3] + tabla[2][3] + tabla[3][3] + tabla[4][3];
  65. Sumacolumna5 = tabla[0][4] + tabla[1][4] + tabla[2][4] + tabla[3][4] + tabla[4][4];
  66.  
  67. cout << "Tabla 5x5 completa:" << endl;
  68. cout << "        1        2        3        4        5" << endl;
  69. cout << "        +-----------------------------------+" << endl;
  70. cout << " 1      |" << tabla[0][0] <<"       "<< tabla[0][1] <<"        "<< tabla[0][2] <<"        "<< tabla[0][3] <<"       "<< tabla[0][4] << "| " << Sumafila << endl;
  71. cout << " 2      |" << tabla[1][0] <<"       "<< tabla[1][1] <<"        "<< tabla[1][2] <<"        "<< tabla[1][3] <<"       "<< tabla[1][4] << "| " << Sumafilados << endl;
  72. cout << " 3      |" << tabla[2][0] <<"       "<< tabla[2][1] <<"        "<< tabla[2][2] <<"        "<< tabla[2][3] <<"       "<< tabla[2][4] << "| " << Sumafilatres << endl;
  73. cout << " 4      |" << tabla[3][0] <<"       "<< tabla[3][1] <<"        "<< tabla[3][2] <<"        "<< tabla[3][3] <<"       "<< tabla[3][4] << "| " << Sumafilacuatro << endl;
  74. cout << " 5      |" << tabla[4][0] <<"       "<< tabla[4][1] <<"        "<< tabla[4][2] <<"        "<< tabla[4][3] <<"       "<< tabla[4][4] << "| " << Sumafilacinco << endl;
  75. cout << "        +-----------------------------------+" << endl;
  76. cout << "        " << Sumacolumna1 << "        " << Sumacolumna2 << "        " << Sumacolumna3 << "        " << Sumacolumna4 << "        " << Sumacolumna5 << endl;
  77. cout << endl;
  78.  
  79. cout << "Escribe algo para salir" << endl;
  80. cin >> Confirmar;
  81. }
  #11 (permalink)  
Antiguo 05/07/2011, 12:41
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Problema sumar arrays

Cita:
Iniciado por baker1562 Ver Mensaje
lo hice asi y me salio, pon el calculo de columnas hasta el final, por creo ( eso pienso yo), que a la hora de hacer la sumatoria aun no se han introducido las otras columnas para que muestre el resultado, la ultima si daba por que en ese instante ya estaban todos los datos en memoria
Código C++:
Ver original
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. char Confirmar[500];
  5. int tabla[6][6];
  6. int Sumafila;
  7. int Sumafilados;
  8. int Sumafilatres;
  9. int Sumafilacuatro;
  10. int Sumafilacinco;
  11. int Sumacolumna1;
  12. int Sumacolumna2;
  13. int Sumacolumna3;
  14. int Sumacolumna4;
  15. int Sumacolumna5;
  16.  
  17. int main()
  18. {
  19. cout << "Programa dessarollado por Jesus Martin Berlanga." << endl;
  20. cout << "COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS" << endl;
  21. cout << "SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA" << endl;
  22. cout << "Tabla 5x5:" << endl;
  23. cout << "        1        2        3        4        5" << endl;
  24. cout << "        +-----------------------------------+" << endl;
  25. cout << " 1      |" << endl;
  26. cout << " 2      |" << endl;
  27. cout << " 3      |" << endl;
  28. cout << " 4      |" << endl;
  29. cout << " 5      |" << endl;
  30. cout << "        +-----------------------------------+" << endl;
  31.  
  32. cout << "Introduce los 5 numeros de la primera fila separados por espacios." << endl;
  33. cin >> tabla[0][0] >> tabla[0][1] >> tabla[0][2] >> tabla[0][3] >> tabla[0][4];
  34. Sumafila = tabla[0][0] + tabla[0][1] + tabla[0][2] + tabla[0][3] + tabla[0][4];
  35.  
  36.  
  37.  
  38. cout << "Introduce los 5 numeros de la segunda fila separados por espacios." << endl;
  39. cin >> tabla[1][0] >> tabla[1][1] >> tabla[1][2] >> tabla[1][3] >> tabla[1][4];
  40. Sumafilados= tabla[1][0] + tabla[1][1] + tabla[1][2] + tabla[1][3] + tabla[1][4];
  41.  
  42.  
  43.  
  44. cout << "Introduce los 5 numeros de la tercera fila separados por espacios." << endl;
  45. cin >> tabla[2][0] >> tabla[2][1] >> tabla[2][2] >> tabla[2][3] >> tabla[2][4];
  46. Sumafilatres = tabla[2][0] + tabla[2][1] + tabla[2][2] + tabla[2][3] + tabla[2][4];
  47.  
  48.  
  49.  
  50. cout << "Introduce los 5 numeros de la cuarta fila separados por espacios." << endl;
  51. cin >> tabla[3][0] >> tabla[3][1] >> tabla[3][2] >> tabla[3][3] >> tabla[3][4];
  52. Sumafilacuatro = tabla[3][0] + tabla[3][1] + tabla[3][2] + tabla[3][3] + tabla[3][4];
  53.  
  54.  
  55.  
  56. cout << "Introduce los 5 numeros de la quinta fila separados por espacios." << endl;
  57. cin >> tabla[4][0] >> tabla[4][1] >> tabla[4][2] >> tabla[4][3] >> tabla[4][4];
  58. Sumafilacinco = tabla[4][0] + tabla[4][1] + tabla[4][2] + tabla[4][3] + tabla[4][4];
  59.  
  60.  
  61. Sumacolumna1 = tabla[0][0] + tabla[1][0] + tabla[2][0] + tabla[3][0] + tabla[4][0];
  62. Sumacolumna2 = tabla[0][1] + tabla[1][1] + tabla[2][1] + tabla[3][1] + tabla[4][1];
  63. Sumacolumna3 = tabla[0][2] + tabla[1][2] + tabla[2][2] + tabla[3][2] + tabla[4][2];
  64. Sumacolumna4 = tabla[0][3] + tabla[1][3] + tabla[2][3] + tabla[3][3] + tabla[4][3];
  65. Sumacolumna5 = tabla[0][4] + tabla[1][4] + tabla[2][4] + tabla[3][4] + tabla[4][4];
  66.  
  67. cout << "Tabla 5x5 completa:" << endl;
  68. cout << "        1        2        3        4        5" << endl;
  69. cout << "        +-----------------------------------+" << endl;
  70. cout << " 1      |" << tabla[0][0] <<"       "<< tabla[0][1] <<"        "<< tabla[0][2] <<"        "<< tabla[0][3] <<"       "<< tabla[0][4] << "| " << Sumafila << endl;
  71. cout << " 2      |" << tabla[1][0] <<"       "<< tabla[1][1] <<"        "<< tabla[1][2] <<"        "<< tabla[1][3] <<"       "<< tabla[1][4] << "| " << Sumafilados << endl;
  72. cout << " 3      |" << tabla[2][0] <<"       "<< tabla[2][1] <<"        "<< tabla[2][2] <<"        "<< tabla[2][3] <<"       "<< tabla[2][4] << "| " << Sumafilatres << endl;
  73. cout << " 4      |" << tabla[3][0] <<"       "<< tabla[3][1] <<"        "<< tabla[3][2] <<"        "<< tabla[3][3] <<"       "<< tabla[3][4] << "| " << Sumafilacuatro << endl;
  74. cout << " 5      |" << tabla[4][0] <<"       "<< tabla[4][1] <<"        "<< tabla[4][2] <<"        "<< tabla[4][3] <<"       "<< tabla[4][4] << "| " << Sumafilacinco << endl;
  75. cout << "        +-----------------------------------+" << endl;
  76. cout << "        " << Sumacolumna1 << "        " << Sumacolumna2 << "        " << Sumacolumna3 << "        " << Sumacolumna4 << "        " << Sumacolumna5 << endl;
  77. cout << endl;
  78.  
  79. cout << "Escribe algo para salir" << endl;
  80. cin >> Confirmar;
  81. }

FUNCIONA PERFECTAMENTE, muchisimas gracias. Era porloque tu dices, los datos no estaban introducidos.
Un saludo.
  #12 (permalink)  
Antiguo 06/07/2011, 01:28
Avatar de Doommarine_Maxi  
Fecha de Ingreso: febrero-2011
Mensajes: 54
Antigüedad: 13 años, 9 meses
Puntos: 8
Respuesta: Problema sumar arrays

Te recomiendo que trabajes con funciones compañero (ya estube viendo varios codigos tuyos).


Este por ejemplo seria una version mas "funcional" de tu programa ya que permite no solo matrices con 5x5, sino con varios tipo de dimensiones (2x5, 5x3, 2x4, etc...)
Fijate echale un vistaso.
Código C++:
Ver original
  1. #include <iostream>
  2.         using namespace std;
  3.          
  4.         char Confirmar[500];
  5.         int tabla[12][12];
  6.         int Sumafila[12];
  7.         int Sumacolumna[12];
  8.         char m_numeros[12][32];
  9.        
  10.         void calc_filas(int, int);
  11.         int agregar_fila(char* ,int , int);
  12.         void calc_columnas(int, int);
  13.      
  14.         void most_tabla(int, int);
  15.         int main()
  16.         {
  17.         cout << "Programa dessarollado por Jesus Martin Berlanga (Modificado por Maximiliano Viamonte)." << endl;
  18.         cout << "COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS" << endl;
  19.         cout << "SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA" << endl;
  20.          
  21.         strcpy(m_numeros[0], "primera");
  22.         strcpy(m_numeros[1], "segunda");
  23.         strcpy(m_numeros[2], "tercera");
  24.         strcpy(m_numeros[3], "cuarta");
  25.         strcpy(m_numeros[4], "quinta");
  26.         strcpy(m_numeros[5], "sexta");
  27.         strcpy(m_numeros[6], "septima");
  28.         strcpy(m_numeros[7], "octava");
  29.          
  30.          calc_filas(5, 5);
  31.          calc_columnas(5, 5);
  32.          most_tabla(5, 5);
  33.          
  34.      
  35.          
  36.         cout << "Escribe algo para salir" << endl;
  37.         cin >> Confirmar;
  38.         }
  39.        
  40.     void calc_filas(int cantidad, int columnas)
  41.     {
  42.      int i = 0;
  43.          char mensaje[512];
  44.          while (i < cantidad)
  45.          {
  46.              sprintf(mensaje, "Introduce los %i numeros de la %s fila separados por espacios.\n", columnas, m_numeros[i]);
  47.              Sumafila[i] = agregar_fila(mensaje, i, columnas);
  48.              i = i + 1;      
  49.          }
  50.        
  51.         return;
  52.          
  53.        
  54.     }
  55.     void calc_columnas(int filas, int columnas)
  56.     {
  57.          int f = 0;
  58.          int c = 0;
  59.          while (c < columnas)
  60.          {
  61.              f = 0;
  62.              Sumacolumna[c] = 0;
  63.              while (f < filas)
  64.              {
  65.                     Sumacolumna[c] =  Sumacolumna[c] + tabla[f][c];
  66.                     f = f + 1;
  67.              }
  68.              c = c + 1;
  69.          }
  70.          return;
  71.     }
  72.     int agregar_fila(char * mensaje, int fila, int columnas)
  73.     {
  74.         cout << mensaje << endl;
  75.         int resultado = 0;
  76.         int c = 0;
  77.         while (c < columnas)
  78.         {
  79.               cin >> tabla[fila][c];
  80.               resultado = resultado + tabla[fila][c];
  81.               c = c + 1;
  82.         }
  83.         return  resultado;
  84.     }
  85.     void most_tabla(int filas, int columnas)
  86.     {
  87.          char titulo[512];
  88.          sprintf(titulo, "Tabla %ix%i completa:", filas, columnas);
  89.      
  90.          char encabezado[1024];
  91.          int c = 0;
  92.          sprintf(encabezado, " ");
  93.          while (c < columnas)
  94.          {
  95.                sprintf(encabezado, "%s        %i", encabezado, (c+1));
  96.                c = c + 1;
  97.          }
  98.          
  99.         cout << titulo << endl;
  100.         cout << encabezado << endl;
  101.         cout << "        +-----------------------------------+" << endl;
  102.          int f = 0;
  103.          char m_fila[filas][1024];
  104.          while (f < filas)
  105.          {
  106.                   sprintf(m_fila[f], " %i      |", (f+1));
  107.                   c = 0;
  108.                   while (c < columnas)
  109.                   {
  110.                         sprintf(m_fila[f], "%s %i      ", m_fila[f], tabla[f][c]);
  111.                         c = c + 1;
  112.                   }
  113.                   sprintf(m_fila[f], "%s| %i", m_fila[f], Sumafila[f]);
  114.                cout << m_fila[f] << endl;
  115.                f = f + 1;
  116.          }
  117.          
  118.          char r_columna[1024];
  119.         sprintf(r_columna, " ");
  120.          c = 0;
  121.          while (c < columnas)
  122.          {
  123.            
  124.             sprintf(r_columna, "%s        %i", r_columna, Sumacolumna[c]);
  125.             c = c + 1;
  126.          }
  127.      
  128.         cout << r_columna << endl;
  129.         cout << endl;
  130.          
  131.          return;
  132.     }

Disculpa si no comente el codigo es que lo hice a las 4:25 am y la verdad tenia sueño xD si hay dudas mañana le hechamos juntos un vistaso, seguramente debe tener algun error el codigo xD.

Sigue programando, es algo bastante entretenido la programacion, todos los dias encuentras a alguien que sabe mas de lo que puedes llegar a imaginar xD (me pasa seguido xDD)
  #13 (permalink)  
Antiguo 06/07/2011, 02:12
 
Fecha de Ingreso: mayo-2011
Ubicación: Almeria (España)
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Problema sumar arrays

Cita:
Iniciado por Doommarine_Maxi Ver Mensaje
Te recomiendo que trabajes con funciones compañero (ya estube viendo varios codigos tuyos).


Este por ejemplo seria una version mas "funcional" de tu programa ya que permite no solo matrices con 5x5, sino con varios tipo de dimensiones (2x5, 5x3, 2x4, etc...)
Fijate echale un vistaso.
Código C++:
Ver original
  1. #include <iostream>
  2.         using namespace std;
  3.          
  4.         char Confirmar[500];
  5.         int tabla[12][12];
  6.         int Sumafila[12];
  7.         int Sumacolumna[12];
  8.         char m_numeros[12][32];
  9.        
  10.         void calc_filas(int, int);
  11.         int agregar_fila(char* ,int , int);
  12.         void calc_columnas(int, int);
  13.      
  14.         void most_tabla(int, int);
  15.         int main()
  16.         {
  17.         cout << "Programa dessarollado por Jesus Martin Berlanga (Modificado por Maximiliano Viamonte)." << endl;
  18.         cout << "COPYRIGHT (C) JESUS MARTIN BERLANGA 2011 TODOS LOS DERECHOS RESERVADOS" << endl;
  19.         cout << "SOLO SE PERMITE EXHIBIR ESTE TEXTO MENCIONANDO AL AUTOR Y ESTA LICENCIA" << endl;
  20.          
  21.         strcpy(m_numeros[0], "primera");
  22.         strcpy(m_numeros[1], "segunda");
  23.         strcpy(m_numeros[2], "tercera");
  24.         strcpy(m_numeros[3], "cuarta");
  25.         strcpy(m_numeros[4], "quinta");
  26.         strcpy(m_numeros[5], "sexta");
  27.         strcpy(m_numeros[6], "septima");
  28.         strcpy(m_numeros[7], "octava");
  29.          
  30.          calc_filas(5, 5);
  31.          calc_columnas(5, 5);
  32.          most_tabla(5, 5);
  33.          
  34.      
  35.          
  36.         cout << "Escribe algo para salir" << endl;
  37.         cin >> Confirmar;
  38.         }
  39.        
  40.     void calc_filas(int cantidad, int columnas)
  41.     {
  42.      int i = 0;
  43.          char mensaje[512];
  44.          while (i < cantidad)
  45.          {
  46.              sprintf(mensaje, "Introduce los %i numeros de la %s fila separados por espacios.\n", columnas, m_numeros[i]);
  47.              Sumafila[i] = agregar_fila(mensaje, i, columnas);
  48.              i = i + 1;      
  49.          }
  50.        
  51.         return;
  52.          
  53.        
  54.     }
  55.     void calc_columnas(int filas, int columnas)
  56.     {
  57.          int f = 0;
  58.          int c = 0;
  59.          while (c < columnas)
  60.          {
  61.              f = 0;
  62.              Sumacolumna[c] = 0;
  63.              while (f < filas)
  64.              {
  65.                     Sumacolumna[c] =  Sumacolumna[c] + tabla[f][c];
  66.                     f = f + 1;
  67.              }
  68.              c = c + 1;
  69.          }
  70.          return;
  71.     }
  72.     int agregar_fila(char * mensaje, int fila, int columnas)
  73.     {
  74.         cout << mensaje << endl;
  75.         int resultado = 0;
  76.         int c = 0;
  77.         while (c < columnas)
  78.         {
  79.               cin >> tabla[fila][c];
  80.               resultado = resultado + tabla[fila][c];
  81.               c = c + 1;
  82.         }
  83.         return  resultado;
  84.     }
  85.     void most_tabla(int filas, int columnas)
  86.     {
  87.          char titulo[512];
  88.          sprintf(titulo, "Tabla %ix%i completa:", filas, columnas);
  89.      
  90.          char encabezado[1024];
  91.          int c = 0;
  92.          sprintf(encabezado, " ");
  93.          while (c < columnas)
  94.          {
  95.                sprintf(encabezado, "%s        %i", encabezado, (c+1));
  96.                c = c + 1;
  97.          }
  98.          
  99.         cout << titulo << endl;
  100.         cout << encabezado << endl;
  101.         cout << "        +-----------------------------------+" << endl;
  102.          int f = 0;
  103.          char m_fila[filas][1024];
  104.          while (f < filas)
  105.          {
  106.                   sprintf(m_fila[f], " %i      |", (f+1));
  107.                   c = 0;
  108.                   while (c < columnas)
  109.                   {
  110.                         sprintf(m_fila[f], "%s %i      ", m_fila[f], tabla[f][c]);
  111.                         c = c + 1;
  112.                   }
  113.                   sprintf(m_fila[f], "%s| %i", m_fila[f], Sumafila[f]);
  114.                cout << m_fila[f] << endl;
  115.                f = f + 1;
  116.          }
  117.          
  118.          char r_columna[1024];
  119.         sprintf(r_columna, " ");
  120.          c = 0;
  121.          while (c < columnas)
  122.          {
  123.            
  124.             sprintf(r_columna, "%s        %i", r_columna, Sumacolumna[c]);
  125.             c = c + 1;
  126.          }
  127.      
  128.         cout << r_columna << endl;
  129.         cout << endl;
  130.          
  131.          return;
  132.     }

Disculpa si no comente el codigo es que lo hice a las 4:25 am y la verdad tenia sueño xD si hay dudas mañana le hechamos juntos un vistaso, seguramente debe tener algun error el codigo xD.

Sigue programando, es algo bastante entretenido la programacion, todos los dias encuentras a alguien que sabe mas de lo que puedes llegar a imaginar xD (me pasa seguido xDD)
Gracias por tu esfuerzo me ha sido muy util. Fuciona perfectamente pero no entiendo lo que quieres hacer, ya que, al usuario siempre se le piden introducir 5 datos por columna. Haber si hy me lo puedes explicar xD
ke como ya ves, llebo 2 dias programando en c++. Dios no se como lo haces, esk yo solo de ver el codigo me mareo O_O.

Última edición por berserkerhacker; 06/07/2011 a las 02:18

Etiquetas: arrays
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:53.