• Domingo 28 de Abril de 2024, 07:05

Autor Tema:  Duda Matrices Multidimencionales //dinamicas  (Leído 1167 veces)

rugnir

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Duda Matrices Multidimencionales //dinamicas
« en: Lunes 15 de Mayo de 2006, 18:40 »
0
bueno hice un programa que se supone tiene que calcular el area en R^2 y el volumen en    R^3, el usuario tenia que ingresar los parametros del rectangulo son:

1º el numero de veces que tengo que dividirlo en el eje x
2º el numero de veces que tengo que dividirlo en el eje y
3º el largo1
4º el largo2
5º el alto1
6ª el alto2

bueno eso seria para  R^2 (en el plano).

para  R^3

1º el numero de veces que tengo que dividirlo en el eje x
2º el numero de veces que tengo que dividirlo en el eje y
3º el numero de veces que tengo que dividirlo en el eje z
4º el largo1
5º el largo2
6º el alto1
7º el alto2
8º el ancho1
9º el ancho2

bueno ya lo hice en R2
bueno este es una parte del codigo [esto es solo en R2]
//////////////////////////////////////////////////////////////////////////////////////
   float largo_n,alto_m,larg,alt;
   larg = alt = largo_n = alto_m = 0;
  int i,j;
  double **area=NULL;
  float area_t=0;
  larg = *largo2 - *largo1;
  alt = *alto2 - *alto1;
  //vector dinamico
  area = (double **)malloc(sizeof(double)*(*n));
  for(i=0;i<*n;i++){
  for(j=0;j<*m;j++){
  area = (double *)malloc(sizeof(double)*(*n * *m));
  }
 }
  largo_n = larg / *n;
  alto_m = alt / *m;
 printf("\tEl area de :\n\n");

 for(i=0; i < *n ;i++){
  for(j =0; j < *m ;j++){
  area[j] = (largo_n * alto_m);
  printf("\n\t[%d][%d] = %f",i,j,area[j]);
   }
}
  for(i=0;i< *n;i++){
  for(j=0;j< *m;j++){
       area_t += area[j];
   //    printf("\n\tel area es  %f",area_t);
  }
}
printf("\n\n\tel area es : [ %.4f ]",area_t);
  }
    else
    printf("\n\n\tNo se puede dividir por 0 o por un numero negativo!!!");
  //  for(int i=0; i< *n; i++) free(area);
 //   free(area);
    exit(0);
    return 0;
}
/////////////////////////////////////////////////////////////////

bueno mi problema esta en R3 [el espacio]

//////////////////////////////////////////////////////////////////

  float largo_n,alto_m,larg,alt,ancho,ancho_mn;
  larg = alt = largo_n =alto_m =ancho= 0;
  int i,j,k;
  float ***area = NULL;
  float area_t=0;
  larg = *largo2 - *largo1;
  alt = *alto2 - *alto1;
  ancho = *ancho2 - *ancho1;

  //vector dinamico
area = (float ***)malloc(sizeof(float)*(*n * *m * *mn));
  for(i=0 ; i < *n ; i++){
  for(j=0 ; j < *m ; j++){
 for(k=0 ; k < *mn ; k++){
  area[j] = (float *)malloc(sizeof(float)*(*n * *m * *mn));
                    }
                        }
                       }
  largo_n = larg / *n;
  alto_m = alt / *m;
  ancho_mn = ancho / *mn;
 printf("\tEl area de :\n\n");
 for(i=0; i < *n ;i++){
  for(j =0; j < *m ;j++){// alto-1 ;j>0;j--){
   for(k =0; k < *mn ;k++){
  area[j][k] = (largo_n * alto_m * ancho_mn);
  printf("\n[%d][%d][%d] = %.4f",i,j,k,area[j][k]);
                                 }
   printf("\n");
                        }
                }
  for(i=0;i< *n;i++){
  for(j=0;j< *m;j++){
   for(k =0; k < *mn ;k++){
       area_t += area[j][k];

                        }
                }
                }
                printf("\n\tel volumen es %.4f",area_t);
    //////////////////////////////////////////////////////////////////
    }
    else
    printf("\n\n\tNo se puede dividir por 0, Por un \n\tnumero negativo o un numero \n\tmeror entre ellos!!!\n\t"); exit(0);
}
//////////////////////////////////////////////////////////////////

haaa y se me olvidava mi duda es vectores multidimencionales dinamicos
como po puedo hacer mas eficiente sin tener que definir "#define tam 100"
para mi matrixz ya que al final mi prgrama tiene que calcular el area y el volumen como una suma de riemman(una integral de un rectangulo )

y me esta costando quizas definir mi variable  si no me entendieron despues subo unas imagenes de que tien que hacer este programa

PDT: espero solucionar mi problema com las matricez multid.... dinamicas

despues subo el codigo completo
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

rugnir

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Duda Matrices Multidimencionales //dinamicas
« Respuesta #1 en: Lunes 15 de Mayo de 2006, 18:48 »
0
bueno aqui esta el codigo fuente y el ejecutable para que lo revisen porfa... gracias
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Duda Matrices Multidimencionales //dinamicas
« Respuesta #2 en: Miércoles 17 de Mayo de 2006, 14:18 »
0
podrias extractar puntualmente tus dudas por favor?
asi m´pas pesonas entenderan lo que quieres y podran ayudarte.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

rugnir

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Duda Matrices Multidimencionales //dinamicas
« Respuesta #3 en: Jueves 18 de Mayo de 2006, 23:37 »
0
no importa ya encontre la respuesta solo era una confucion con los punteros  pero igual se agradece...