Autor
|
Tema: Matriz como parametro de una funcion (Leído 10,182 veces)
|
Dacan
|
Como puedo obtener una matriz desde los parametros de una funcion? Necesito hacer una funcion para multiplicar matrices: int multmatrices(int afilas, int acolumnas, aarreglo[][], int bfilas, int bcolumnas, barreglo[][]){
Me da error al intentar obtener las matrices asi.
|
|
|
En línea
|
|
|
|
durasno
Desconectado
Mensajes: 373
|
Tenes mal la declaracion de la funcion, tnes que especificar el tipo de dato de las matrices y los tamaños(filas y columnas)
Saludos
|
|
|
En línea
|
Ahorrate una pregunta, lee el man
|
|
|
Dacan
|
int multmatrices(int afilas, int acolumnas, int aarreglo[][], int bfilas, int bcolumnas, int barreglo[][]){
Las filas y columnas seran asignadas por el usuario es decir para eso son las otras variables: afilas, acolumnas, bfilas, bcolumnas.
|
|
|
En línea
|
|
|
|
durasno
Desconectado
Mensajes: 373
|
En el caso de las matrices tenes q especificar si o si las filas y columnas, sino tenes que usar matrices dinamicos para hacer uso de afilas, acolumnas,....
Saludos
PD: enrealiadad si se puede omitir las filas en la declaracion, pero no las columnas
|
|
|
En línea
|
Ahorrate una pregunta, lee el man
|
|
|
Dacan
|
Y como puedo utilizar matrices dinamicos, lo necesito ya que la funcion a crear necesariamente debe ser asignada por el usuario.
|
|
|
En línea
|
|
|
|
naderST
|
Debes especificar únicamente las columnas, pero en tu caso debes utilizar un apuntador y pasarle a la función el número de columnas de tu matriz dinámica ya que necesitas saber sí o sí el número de columnas ya que al final tu matriz en memoria no es más que un arreglo, es decir, digamos que tienes el siguiente arreglo en memoria:
1 2 3 4 5 6
Puedes verlo como varias matrices:
2x3 1 2 3 4 5 6
3x2 1 2 3 4 5 6
6x1 1 2 3 4 5 6
Todo depende de cómo la quieras tratar.
|
|
|
En línea
|
|
|
|
durasno
Desconectado
Mensajes: 373
|
Y como puedo utilizar matrices dinamicos Tnes q investigar el tema de "memoria dinamica", vas a ver funciones como malloc, realloc, free.. comenza intentando hacer un arreglo unidimencional dinamico y luego pasa por la matriz. Cualquier duda pregunta Si te parece muy dificil el tema, la otra alternativa es crear matrices con tamaños maximos, ejemplo: #include <stdio.h> #define MAX_FILAS 10 #define MAX_COLUMNAS 10 int multmatrices(int afilas, int acolumnas, int aarreglo[MAX_FILAS][MAX_COLUMNAS], int bfilas, int bcolumnas, int barreglo[MAX_FILAS][MAX_COLUMNAS]) { /* ........ */ } int main() { /* variables */ int a[MAX_FILAS][MAX_COLUMNAS], b[MAX_FILAS][MAX_COLUMNAS]; /* ingreso del usuario de los tamaños de la matriz; debe ser menor que los valores maximos definidos */ multmatrices( afilas, acolumnas, a, b, bfilas, bcolumnas); return 0; }
|
|
|
En línea
|
Ahorrate una pregunta, lee el man
|
|
|
Dacan
|
Muchisimas gracias, me funciona mejor lo de declarar constantes y con un simple if puedo comprobar de que los valores del usuario sean menores Lo de memoria dinamica y punteros quizas lo averigue para luego. Saludos.
|
|
|
En línea
|
|
|
|
Wofo
Desconectado
Mensajes: 168
|
Por si te interesa, lo de matrices/arrays dinámicos es muy fácil de implementar usando una de las librerías estándares que trae C++ y que se llama "vector". Usarlo es tan sencillo como muestro en el código: #include <vector> int main() { int size = 5; vector<int> array(size); array[0] = 8; array[1] = 3; //array[5] daría error porque está fuera del rango }
Descripción: http://www.cplusplus.com/reference/vector/vector/Ejemplos: http://www.mochima.com/tutorials/vectors.htmlFuente: Google. Saludos, Wofo.
|
|
« Última modificación: 25 Marzo 2013, 16:47 pm por Wofo »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
ayuda con parametro a funcion open()
Programación C/C++
|
luzzzifer
|
5
|
4,242
|
26 Agosto 2010, 07:02 am
por Littlehorse
|
|
|
Problema al pasar funcion como parametro a un inicializador de clase [C++][ok]
Programación C/C++
|
<[(x)]>
|
7
|
7,312
|
17 Abril 2012, 05:30 am
por <[(x)]>
|
|
|
[javascript] llamar a funcion que se recibe por parametro de la funcion
Desarrollo Web
|
Graphixx
|
0
|
5,994
|
24 Abril 2012, 19:36 pm
por Graphixx
|
|
|
Pasar matriz char a una función como referencia
Programación C/C++
|
KISKE
|
2
|
7,721
|
18 Junio 2013, 13:07 pm
por KISKE
|
|
|
Como enviar un fichero como parametro en C++
Programación C/C++
|
DarkSorcerer
|
2
|
10,583
|
1 Septiembre 2013, 12:34 pm
por amchacon
|
|