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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


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

Desconectado Desconectado

Mensajes: 51



Ver Perfil
Punteros creacion de matriz
« en: 7 Septiembre 2015, 19:59 pm »

Buenas,

En este codigo se trata de crear una matriz utilizando memoria dinamica con punteros, mi pregunta es porque al indicar la creacion de la segunda dimension no se antepone el (*) asterisco. donde esta esta parte del codigo (Vec = new int[y];)

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.  int x = 3;
  8.  int y = 3;
  9.  int **Vec;
  10.  
  11.  Vec = new int*[x]; //crear la primera dimension
  12.  
  13.  for(int i=0; i<x; i++)
  14.  {
  15.    Vec[i] = new int[y]; // Aqui porque no se antepone el * como en el caso de arriba.
  16.  }
  17.  
  18.  for(int i=0;i<x;i++){
  19.         for(int j=0;j<y;j++){
  20.            Vec[i][j] = 1;r
  21.            cout<<Vec[i][j]<< " ";
  22.         }
  23.         cout<<endl;
  24.       }
  25.  return 0;
  26.  
  27. }
  28.  
  29.  




« Última modificación: 8 Septiembre 2015, 02:46 am por Ja_90 » En línea

:D  ::::Ja_90::::   :D
RockPosts

Desconectado Desconectado

Mensajes: 28


Ver Perfil
Re: como declaro una Clase llamada Matriz
« Respuesta #1 en: 7 Septiembre 2015, 20:46 pm »

En primer lugar, ¿el tamaño de la matriz está predefinido? ¿Tiene que ser cuadrada (2x2, 3x3...), o cuando te pida el determinante de la matriz no cuadrada te tiene que dar error?. Si la matriz es de un tamaño fijo, lo que tienes que hacer es guardar esa matriz como privada en la clase, tal que así:

Código
  1. class Matriz {
  2.             public:
  3.                   Matriz();
  4.  
  5.                   int get_Size();
  6.                   int get_Determ();
  7.                   int get_Unos();
  8.                   int get_Zeros();
  9.                   int get_Identidad();
  10.  
  11.             private:
  12.                   float matriz[3][3];
  13.  
  14. };

Entonces, a la hora de pasarle el orden, le pasarías 3 (es una matriz 3x3), en el caso del determinante, supondré que sabes como hacer un determinante. En el caso de rellenar, es sencillo (es asignar a cada calor de 'matriz' sus respectivos ceros o unos. Lo mismo en el caso de generar la matriz identidad


En línea

Ja_90

Desconectado Desconectado

Mensajes: 51



Ver Perfil
Re: Punteros creacion de matriz
« Respuesta #2 en: 8 Septiembre 2015, 02:50 am »

RockPosts , Gracias por lo que me indicaste.....modifique el tema ya que encontre la forma de crear la matriz de manera dinamica con punteros pero me surge la duda que pongo alli arriba. Quisiera entender esa duda ya que por fin encontre la manera de implementarla en una clase.

Si alguien mas me pudiera colaborar explicandome el porque de mi pregunta. Muchas gracias.
En línea

:D  ::::Ja_90::::   :D
someRandomCode

Desconectado Desconectado

Mensajes: 250



Ver Perfil
Re: Punteros creacion de matriz
« Respuesta #3 en: 8 Septiembre 2015, 03:42 am »

Vec es puntero a puntero de int.
Cuando haces el primer new, a Vec se le otorga espacio para almacenar 3 punteros a entero.
Luego, para cada puntero a entero, se le da el espacio para sostener X enteros.
Es decir:
Vec = int**
Vec[] = int*
Vec[][] = int
En línea

Ja_90

Desconectado Desconectado

Mensajes: 51



Ver Perfil
Re: Punteros creacion de matriz
« Respuesta #4 en: 8 Septiembre 2015, 05:52 am »

Muchisimas Gracias ya me quedo claro todo.
En línea

:D  ::::Ja_90::::   :D
someRandomCode

Desconectado Desconectado

Mensajes: 250



Ver Perfil
Re: Punteros creacion de matriz
« Respuesta #5 en: 8 Septiembre 2015, 14:08 pm »

Barbaro, cualquier consulta decinos..
Una cosita mas, marca como solucionado el thread asi ayuda a otras personas a buscar soluciones rapidas ..
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Dudita: Inicializar matriz desde función sin punteros, si es posible.
Programación C/C++
leosansan 2 2,263 Último mensaje 23 Diciembre 2013, 18:47 pm
por leosansan
Matriz de punteros, duda al liberar memoria[C]
Programación C/C++
NOB2014 2 2,866 Último mensaje 9 Junio 2016, 03:04 am
por NOB2014
matriz de punteros de una dimensión - liberar memoria[C]
Programación C/C++
NOB2014 3 2,398 Último mensaje 11 Junio 2016, 02:35 am
por AlbertoBSD
Creacion de matriz
Programación C/C++
nonokario 5 2,931 Último mensaje 8 Marzo 2018, 23:42 pm
por nonokario
Matriz sin areas cerradas(punteros)
Programación C/C++
Edinier 1 1,722 Último mensaje 29 Abril 2019, 18:05 pm
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines