S2-P1 INTERCAMBIO DE ELEMENTOS CONCRETOS ENTRE VARIABLES, VECTORES Y MATRICES.
Sea la matriz M de 3*3 elementos, la matriz M1 de 4*4 elementos, el vector V de 3 elementos y el vector V1 de 4 elementos.
Se pide
# Haz un dibujo de una variable a, del vector V y de la matriz M
#1 Asignar a la variable a, el tercer elemento del vector V1
#2 Asignar a la variable b, el elemento 2,1 de la matriz M1
#3 Asignar al elemento 4 del vector V el valor de a
#4 Asignar al elemento 2,1 de la matriz M el elemento 3 del vector V
#5 Asignar al elemento 3 del vector V1 el elemento 5,4 de la matriz M1
#6 Asignar al vector V1 la primera fila de la matriz M1
#7 Asignar a la primera columna de la matriz M el vector V
#8 Asignar al vector V los tres últimos elementos de la segunda columna de la matriz M1
#9 Asignar al vector V, de forma consecutiva, los valores a, b y a+b
#10 Asignar a la primera columna de la matriz M los tres primeros elementos de la segunda fila de la matriz M1
# 1 si le doy valor a a y le digo q es v3 funciona?
#al ser (a) una variable porque no debemos ponerle un valor
Porque en el primer paso perdería su valor y seria inútil dárselo
Solución a los puntos #1 y #2 siguiendo una estrategia de poner la entrada que me hace falta; es decir, primero pongo la asignación (a=V(3)) y después pongo la entrada del vector V
% ponerlo siempre
clc
clear all
%
V=input(‘dame el valor de V *3 ‘);
M1=input(‘hola angel pon el valor de M1 que tiene 4 elementos ‘);
% #1
a=V(3)
% # 2
b=M1(2,1)
% # 3
%V(4)=a está bien escrito, pero no funcionaría ya que V tiene 3 elementos
%# 4
M(2,1)=V(3)
#6 Asignar al vector V1 la 1º fila de la matriz M1 (utilizando bucle for)
for i=1:1:4
V1(1,i)=M1(1,i);
end
V1
#8 Duda
clear all;
clc;
M1=input(‘ Matriz M1 de 4*4 elementos: ‘);
for i=2:1:4
V(1,i)=M1(i,2);
end
V
Al ejecutarlo con M1=[1,2,3,4;5,6,7,8;4,3,2,1;8,7,6,5] , me da
V =
0 6 3 7
Ese primer cero no tendría que estar ahí y no sé en qué me he podido equivocar.
El bucle comienza con i=2, por tanto el primer valor de i es 2 y la primera operación es V(1,2) = …., así pues el elemento V(1,1) se ha quedado sin asignar y por eso te da cero.
Debes comenzar asignando al elmento V(1,1),
PUedes hacerlo, por ejemplo, con la expresión
for i=2:1:4
V(i-1)=M(i,2)
% también se puede V(1,i-1)
end
Otra forma podría ser
for i=1:1:3
V(i)=M(i+1,2)
end