• Domingo 19 de Mayo de 2024, 13:56

Autor Tema:  Tengo Un Problema En C  (Leído 972 veces)

tazz1987

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Tengo Un Problema En C
« en: Lunes 26 de Mayo de 2008, 07:49 »
0
miren tengo un programa que realizar pero la verdad es que no se como pueda resolver esta pequeño detalle tengo que calcular la suma , multiplicacion y la transpuesta de matrices en funciones ya lo tengo es este :
  # include <stdio.h>
 # include <conio.h>
 # include <math.h>
 # include <string.h>
 # include <ctype.h>
  # define  N 30

  /*prototipo*/
  int escmat1(int A[][N],int m);
  int escmat2(int A[][N],int m);
  int sumam(int A[][N],int B[][N]);
  int multm(int A[][N],int B[][N]);
  int trans(int A[][N],int B[][N]);
 
/*funcion principal*/
 int m,o,p,A[][N],B[][N],suma[][N],mult[][N],tran[][N];
 
  main()
  {
printf("Escribe tamaño matriz\n");
    scanf("%d",&m);
   if(m<N)
     {
      escmat1( A,m );
        printf("los valores de la matriz A son ");
        for(o=0; o<m;o++)
          {
           for(p=0; p<m; p++)
           printf("%d", A
  • [p]);

          }
      escmat2( B,m );
        printf("los valores de la matriz B son ");
        for(o=0; o<m;o++)
          {
            for(p=0; p<m; p++)
            printf("%d", B
  • [p]);

          }
      sumam( A, B);
        printf("\nla suma matrices");
         for(o=0; o<m;o++)
          {
           for(p=0; p<m; p++)
           printf("%d+%d=%d ",A
  • [p] ,B
  • [p] ,suma
  • [p]);

         }
     multm(A,B);
       printf("\nla multiplicacion  matrices");
        for(o=0; o<m;o++)
          {
           for(p=0; p<m; p++)
           printf("%d*%d=%d ",A
  • [p],B
  • [p],mult
  • [p]);

         }
     trans(A,B );
        printf("\nla transpuesta matrices");
          for(o=0; o<m;o++)
           {
            for(p=0; p<m; p++)
            printf(" %d",tran[p]
  • );

        }
   printf("\n");
   system("pause");
   }
    else
    {
     printf("numero excesivo <%d\n",N);    
     printf("termino programa\n");
     system("pause");
     }
}
int escmat1(int A[][N],int m)
     {
       printf("\nproporcione valores matriz uno\n");
        for (o=0; o<m;o++)
         {
          for(p=0; p<m; p++)
            scanf("%d", &A
  • [p]);

         }
       return (A
  • [p]);

     }
  int escmat2(int B[][N],int m)
    {
      printf("\nProporcione valores matriz dos\n");
       for (o=0; o<m;o++)
        {
         for(p=0; p<m; p++)
         scanf("%d", &B
  • [p]);

        }
     return (B
  • [p]);

    }
  int sumam(int A[][N],int B[][N])
    {
     for(o=0; o<m;o++)
      {
        for(p=0; p<m; p++)
        suma
  • [p]=A
  • [p]+B
  • [p];

      }
    return (suma
  • [p]);

   }
  int multm(int A[][N],int B[][N])
   {
     for(o=0; o<m;o++)
      {
       for(p=0; p<m; p++)
        mult
  • [p]=A
  • [p]*B
  • [p];

      }
    return (mult
  • [p]);

   }
  int trans(int A[][N],int B[][N])
    {
      for (o=0; o<m;o++)
        {
         for(p=0; p<m; p++)
          tran[p]
  • =A[p]
  • ;

        }
      return (tran[p]
  • );

    }

espero le entiendan lo que deseo es que en lugar de mostrarme los tres resultados deseo que el usuario escoja la opcion que desea realizar en este caso suma , multiplicacion o la transpuesta

es urgente ayundenme

utz

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Re: Tengo Un Problema En C
« Respuesta #1 en: Lunes 26 de Mayo de 2008, 22:54 »
0
hola, no se muy bien lo que quieres hacer, pero cuando he pedio opciones a los usuarios hago uso del switch, y lo que se debe hacer segun sea la opcion.


{
do
{
printf("ingrese opcion: 1 suma, 2 resta"):
scanf("%i",&a);
}
while (a<1 || a>2);


 switch (a)
 {
 case 1: (pones lo que se debe sumar, y los datos que debe pedir)
 break;
 case 2: (los datos que debe pedir, y hacer la operacion)
 break;
}



espero haber podido ayudar.

saludos