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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


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

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Problema al compilar
« en: 28 Agosto 2013, 19:24 pm »

He estado trabajando en un programa que calcula el cubo de una matriz cúbica de dimension N. Pero al compilar no me sale la opción de dar la dimension y automaticamente siempre sale una matriz 3X3. aqui dejo el programa para ver el error, gracias de antemano ^.^

#include <stdio.h>
#include <stdlib.h>
#define DIM 100

void lee_Matriz (float A[DIM][DIM], int N);
void escribe_Matriz (float A[DIM][DIM], int N);
void producto_Matriz (float A[DIM][DIM], float B[DIM][DIM], float C[DIM][DIM], int N);

int main()
{
    float A[DIM][DIM], B[DIM][DIM], C[DIM][DIM];
    int N;

    printf("Dame la dimension de las matrices: ");
    scanf("%d", &N);
    printf("\nIntroduce la matriz: \n\n");
    lee_Matriz(A,N);
    system("pause");
    system("cls");
    printf("La primera fila es: \n\n");
    escribe_Matriz(A,N);
    printf("La segunda fila es: \n\n");
    escribe_Matriz(B,N);
    system("pause");
    system("cls");
    printf("El cubo de esa  fila es: \n\n");
    producto_Matriz(A,B,C,N);
    escribe_Matriz(C,N);

   return 0;
}

void lee_Matriz (float A[DIM][DIM], int N)
{
    int i, j;
    for(i=0;i<N;i++)
    for(j=0;j<N;j++)
    {
        printf("\nDame el elemento %d,%d de la matriz: ",i+1,j+1);
        scanf("%f",&A[j]);
    }
    return ;
}

 void escribe_Matriz (float A[DIM][DIM], int N)
 {
     int i, j;
     for(i=0;i<N;i++)
     {
         printf("(");
     for(j=0;j<N;j++)
     {
         printf(" %.2f ",A[j]);
     }
     printf(")\n");
     }
 }

 float producto_Matriz (float A[DIM][DIM], float B[DIM][DIM], float C[DIM][DIM], int N)
 {
     int i,j,l;
     for(i=0;i<N;i++)
     {
        for(j=0;j<N;j++)
         {
             C[j]=0;
            for(l=0;l<N;l++)
            {
               C[j]+=A[l]*B[l][j];
            }
         }
     }
     return;
 }


En línea

do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Problema al compilar
« Respuesta #1 en: 28 Agosto 2013, 20:23 pm »

¡Buenas!

Así, a botepronto, no veo nada raro. De todas formas edita el post y mete el codigo entre las etiquetas correspondientes GeSHi, el desplegable que tendrás arriba a la derecha en el modo de edición, al final de la primera fila de iconos.

¡Saludos!


« Última modificación: 28 Agosto 2013, 20:25 pm por do-while » En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Eva93

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: Problema al compilar
« Respuesta #2 en: 28 Agosto 2013, 20:52 pm »

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define DIM 100
  4.  
  5. void lee_Matriz (float A[DIM][DIM], int N);
  6. void escribe_Matriz (float A[DIM][DIM], int N);
  7. void producto_Matriz (float A[DIM][DIM], float B[DIM][DIM], float C[DIM][DIM], int N);
  8.  
  9. int main()
  10. {
  11.    float A[DIM][DIM], B[DIM][DIM], C[DIM][DIM];
  12.    int N;
  13.  
  14.    printf("Dame la dimension de las matrices: ");
  15.    scanf("%d", &N);
  16.    printf("\nIntroduce la matriz: \n\n");
  17.    lee_Matriz(A,N);
  18.    system("pause");
  19.    system("cls");
  20.    printf("La primera fila es: \n\n");
  21.    escribe_Matriz(A,N);
  22.    printf("La segunda fila es: \n\n");
  23.    escribe_Matriz(B,N);
  24.    system("pause");
  25.    system("cls");
  26.    printf("El cubo de esa  fila es: \n\n");
  27.    producto_Matriz(A,B,C,N);
  28.    escribe_Matriz(C,N);
  29.  
  30.   return 0;
  31. }
  32.  
  33. void lee_Matriz (float A[DIM][DIM], int N)
  34. {
  35.    int i, j;
  36.    for(i=0;i<N;i++)
  37.    for(j=0;j<N;j++)
  38.    {
  39.        printf("\nDame el elemento %d,%d de la matriz: ",i+1,j+1);
  40.        scanf("%f",&A[j]);
  41.    }
  42.    return ;
  43. }
  44.  
  45. void escribe_Matriz (float A[DIM][DIM], int N)
  46. {
  47.     int i, j;
  48.     for(i=0;i<N;i++)
  49.     {
  50.         printf("(");
  51.     for(j=0;j<N;j++)
  52.     {
  53.         printf(" %.2f ",A[j]);
  54.     }
  55.     printf(")\n");
  56.     }
  57. }
  58.  
  59. float producto_Matriz (float A[DIM][DIM], float B[DIM][DIM], float C[DIM][DIM], int N)
  60. {
  61.     int i,j,l;
  62.     for(i=0;i<N;i++)
  63.     {
  64.        for(j=0;j<N;j++)
  65.         {
  66.             C[j]=0;
  67.            for(l=0;l<N;l++)
  68.            {
  69.               C[j]+=A[l]*B[l][j];
  70.            }
  71.         }
  72.     }
  73.     return;
  74. }
  75.  

Sigo teniendo problemas para compilar el programa
« Última modificación: 28 Agosto 2013, 21:09 pm por Eva93 » En línea

do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Problema al compilar
« Respuesta #3 en: 28 Agosto 2013, 21:20 pm »

Te faltan todos los subindices i

Si pones los errores que te da el compilador mucho mejor. Ahí te estará diciendo que falla.

Otra cosa que acabo de ver. Te falta devolver el valor de la función que hace el  producto. O quitas el devuelves un float o la declara con tipo de retorno void. De hecho en el prototipo dices que el valor de retorno es void y cuando implementas la función lo has puesto float. Creo que eso es todo...

¡Saludos!
« Última modificación: 28 Agosto 2013, 21:31 pm por do-while » En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema al compilar
Java
layker 3 3,881 Último mensaje 18 Noviembre 2008, 03:15 am
por AlbertoBSD
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines