elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Matrices
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Matrices  (Leído 2,637 veces)
yesid1718

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Matrices
« en: 23 Octubre 2016, 04:32 am »

Tengo un codigo en c y en este creo una matriz la imprimo y la sumo luego los valores de las fila pares e impares se guardan en vectores diferentes hasta esta parte todo esta bien pero al sumar los vectores no me aparecen bien los valores de la suma correctamente me aparecen unos números largos todo extraños y no se cual es el error porfavor me podrian ayudar con este tema.?


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Matrices
« Respuesta #1 en: 23 Octubre 2016, 04:41 am »

sin ver tu codigo puede ser que sumaste mal, fallaste colocando algo en las matrices ya que no tiene claridad de como se usan, estás imprimiendo lo que no debes, nunca las inicializaste.... las posibilidades son muchas...

si colocas tu codigo usa las etiquetas GeSHi


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
yesid1718

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Matrices
« Respuesta #2 en: 23 Octubre 2016, 05:01 am »

Código
  1. #include<stdio.h>
  2. #include<conio.h>
  3.  
  4. //Declaracion de funciones
  5.  
  6. void llenar_matriz( int A[10][10] , int , int);
  7. void imprimir_matriz(int A[10][10] , int , int);
  8. void llenar_vectorpar(int B[25], int A[10][10], int, int );
  9. void llenar_vectorimpar(int G[25], int A[10][10], int, int );
  10. void suma_vectorA(int A[25] , int, int );
  11. void sumar_matriz(int A[10][10] , int , int);
  12.  
  13.  
  14. // programa principal
  15.  
  16. void main(){
  17.  
  18. //zona de declaración de variables locales
  19.  
  20. int f;
  21. int g;
  22. int A[10][10];
  23. int B[25];
  24. int G[25];
  25.  
  26. printf("ingrese el nuemro de filas \n");
  27. scanf("%d",&g);
  28. printf("ingrese el nuemro de columnas \n");
  29. scanf("%d",&f);
  30.  
  31. llenar_matriz (A,g, f);
  32.    imprimir_matriz (A, g, f);
  33.    sumar_matriz(A,g,f);
  34.    llenar_vectorpar(B,A, g, f);
  35.    llenar_vectorimpar(G,A, g, f);
  36.    suma_vectorA( B, g,f );
  37.    suma_vectorA( G, g,f );
  38.  
  39.   getch();
  40.  
  41. }
  42.  
  43. void llenar_matriz (int A[10][10] , int g , int f)
  44.  
  45. {
  46.  
  47. int fila,columna;
  48.  
  49.  
  50. for (fila=0; fila<=g; fila++)
  51. {
  52. for (columna=0; columna<=f; columna++)
  53. {
  54.  
  55. printf ("digite el valor en la posicion %d %d", fila, columna);
  56. scanf("%d", &A[fila][columna]);
  57. }
  58. printf("\n");
  59. }
  60.  
  61. }
  62.  
  63. void sumar_matriz(int A[10][10] , int g , int f ){
  64.  
  65. int fila,columna;
  66. int Ac=0 ;
  67.  
  68.  
  69.  
  70. for (fila=0; fila<=g; fila++)
  71. {
  72. for (columna=0; columna<=f; columna++)
  73. {
  74.  
  75. Ac= A[fila][columna] + Ac ;
  76. }
  77.  
  78. }
  79. printf("\nla suma de la matriz es:\n ");
  80. printf ("\n%d\n", Ac);
  81.  
  82. }
  83.  
  84.  
  85. void imprimir_matriz( int A[10][10], int g , int f ) {
  86.  
  87. int fila,columna;
  88.  
  89.  for (fila=0; fila<=g; fila++)
  90. {
  91. for (columna=0; columna<=f; columna++)
  92. {
  93.  
  94. printf ("\t %d", A[fila][columna]);
  95.  
  96. }
  97. printf("\n ");
  98. }
  99.  
  100.  
  101.  
  102.  
  103. }
  104.  
  105.  
  106.  
  107. void  llenar_vectorpar(int B[25], int A[10][10], int g , int  f) {
  108.  
  109.  int fila,columna;
  110.  
  111. printf("\nvector para las filas par\n");
  112.  for (fila=0; fila<=g; fila++) {
  113.  
  114. for (columna=0; columna<=f; columna++){
  115. if(fila % 2 == 0) {
  116.  
  117.  
  118. B[fila]=A[fila][columna];
  119. printf("%d\n",B[fila]);
  120.  
  121.                     }
  122.  
  123.                                       }
  124.  
  125. }
  126.  
  127. }
  128.  
  129. void llenar_vectorimpar(int G[25], int A[10][10], int g, int f ){
  130.  
  131. int fila,columna;
  132.  
  133. printf("\nvector para las filas impar\n\n");
  134.  for (fila=0; fila<=g; fila++) {
  135.  
  136. for (columna=0; columna<=f; columna++){
  137. if(fila % 2 != 0) {
  138.  
  139.  
  140. G[fila]=A[fila][columna];
  141. printf("%d\n",G[fila]);
  142.  
  143.                     }
  144.  
  145.                                       }
  146.  
  147. }
  148.  
  149. }
  150.  
  151. void suma_vectorA(int B[25] , int g, int f) {
  152.  
  153. int Ac=0;
  154. int i;
  155.  
  156.  
  157. for ( i=0 ; i<=g ; i++){
  158.  
  159. Ac= B[i] + Ac ;
  160.  
  161. }
  162.  
  163. printf( "\nla suma de los valores del vector para filas pares es:\n ");
  164. printf("\n%d\n", Ac);
  165.  
  166. }
  167.  



Este es el código no se que tengo mal te agradeceria que me ayudaras.



Mod: Los códigos deben ir en etiquetas GeSHi
« Última modificación: 23 Octubre 2016, 05:04 am por engel lex » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Matrices
« Respuesta #3 en: 23 Octubre 2016, 05:05 am »

ahora corre tu código y muestra una captura de pantalla a ver el resultado

aunque de antemano en los for veo unos menor o igual, que deberian ser solo menor que

y en general, main debe ser tipo int y retornar 0...
« Última modificación: 23 Octubre 2016, 05:11 am por engel lex » En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
yesid1718

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Matrices
« Respuesta #4 en: 23 Octubre 2016, 05:16 am »

« Última modificación: 23 Octubre 2016, 06:21 am por yesid1718 » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Matrices
« Respuesta #5 en: 23 Octubre 2016, 05:41 am »

fijate el error que te digo (en tiempo de ejecución)

Código:
filas: 1, columnas: 1
vector:
1 2
3 4

en ese vector cuento 2 filas y 2 columnas

el error está en

Código
  1. void  llenar_vectorpar(int B[25], int A[10][10], int g , int  f) {
  2.  
  3.  int fila,columna;
  4.  
  5. printf("\nvector para las filas par\n");
  6.  for (fila=0; fila<=g; fila++) {
  7.  
  8. for (columna=0; columna<=f; columna++){
  9. if(fila % 2 == 0) {
  10.  
  11.  
  12. B[fila]=A[fila][columna];
  13. printf("%d\n",B[fila]);
  14.  
  15.                     }
  16.  
  17.                                       }
  18.  
  19. }
  20. }

cuando llenas B o G, saltas la posición... es decir en ese segmento, nunca llenas B[1] por ejemplo, asi que cuando llegas a llenar vector y accedes a B[1], contiene basura como es de esperar
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
matrices en C#
Programación General
volterra 4 10,191 Último mensaje 18 Mayo 2010, 06:26 am
por Og.
matrices
Programación C/C++
aral90 2 2,248 Último mensaje 9 Diciembre 2011, 20:13 pm
por aral90
matrices
.NET (C#, VB.NET, ASP)
legomanticore 4 3,569 Último mensaje 14 Mayo 2012, 03:02 am
por $Edu$
matrices en c
Programación C/C++
ALONSOQ 9 4,787 Último mensaje 27 Junio 2012, 05:15 am
por twins
matrices
Programación C/C++
lorderick 3 3,069 Último mensaje 8 Septiembre 2012, 05:12 am
por CSQCasimiro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines