Matlab - rellenar matriz bidimensional

 
Vista:

rellenar matriz bidimensional

Publicado por Tamara (12 intervenciones) el 10/03/2008 11:59:50
Hola!

Una duda que sera tonta, pero que me tiene.................

¿¿¿Cómo rellenar una matriz bidimensional??? Es que la siguiente sentencia me da error:

matrizresultados(fila)(colum)=correlacion;

ERROR:

()-indexing must appear last in an index expression.

¿Alguna idea?
Gracias de antemano,
Tamara
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:rellenar matriz bidimensional

Publicado por Kike (304 intervenciones) el 10/03/2008 15:02:24
matrizresultados(fila)(colum)=correlacion;
El error está en que se usa sólo un par de paréntesis, no dos.
Los índices de una matriz se escriben así:
matriz(fila, columna)

También pueden escribirse con un sólo índice, que indica la posición del elemento en la matriz primero de arriba hacia abajo, y luego de izquierda a derecha. Por ejemplo en una matriz 3x3, el cuarto elemento está en la fila 1 y la columna 2.
matriz(elemento)

Puedo rellenar una matriz usando un for.
1
2
3
4
5
6
7
martiz=[ ];
for k=1:9 % 9 elementos en una matriz 3x3
fprintf('
Digite el %do. elemento de la matriz: ', k);
matriz(k)=input(' ');
end
matriz

Puedo rellenar la matriz usando dos for.
1
2
3
4
5
6
7
8
matriz=[ ];
for fila=1:3
for columna=1:3
fprintf('
Digite el elemento de la fila %d y la columna %d: ', fila, columna)
matriz(fila, columna)=input(' ');
end
end

Puedo crear una matriz a partir de otra. Sea M una matriz de 10x10.
1
2
3
4
matriz1=M(1:3,4:5) % filas desde 1 hasta 3, columnas 4 y 5
matriz2=M([1,3,5], :) % filas 1, 3 y 5, todas las columnas
matriz3=M(:, 7) % todas las filas, columna 7
matriz4=[M(1,1), M(1,10); M(10,1), M(10,10)] % las cuatro esquinas de M
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

RE:rellenar matriz bidimensional

Publicado por José (1 intervención) el 19/12/2011 13:00:49
los bucles for para recorrer la matriz y meter los datos con imput funcionan, pero el problema pasa cuando en vez de meter un numero metes un intro o una tabulación, entonces da un error que no es tan fácil solucionarlo, ni con un while ni con un if ya que M(fila, Columna)='\n' no lo considera y sale el error de
In an assignment A(matrix,matrix) = B, the number of rows in B
and the number of elements in the A row index matrix must be the same.
alguien puede decirme como solucionar el error para poder pedir otra vez que introduzca el dato ya que no es válido el intro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:rellenar matriz bidimensional

Publicado por fernando ponce (1 intervención) el 25/07/2019 08:24:55
gracias por esta script
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar