Matlab - cambio de diagonal principal matlab

 
Vista:
sin imagen de perfil
Val: 11
Ha aumentado su posición en 4 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

cambio de diagonal principal matlab

Publicado por Elias (6 intervenciones) el 03/10/2019 23:47:19
buenas,soy un poco nuevo en matlab y las herramientas que hasta ahora tengo no me han servido, me piden crear una matriz F con base en la matriz A osea F=A y me dicen DESPUES que en UNA SOLA LINEA DE CODIGO cambie los valores de la diagonal principal por 1

A=[9,25,6,4;15,71,40,8;13,3,55,10;6,23,23,11]
de ante manos gracias
ojala puedan ayudarme.
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

cambio de diagonal principal matlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 04/10/2019 01:53:42
1
2
A=[9,25,6,4;15,71,40,8;13,3,55,10;6,23,23,11]
A(1:5:16)=[1 1 1 1 ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>> cambiar_diagonal
 
A =
 
     9    25     6     4
    15    71    40     8
    13     3    55    10
     6    23    23    11
 
 
A =
 
     1    25     6     4
    15     1    40     8
    13     3     1    10
     6    23    23     1
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
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

cambio de diagonal principal matlab

Publicado por Daniel (354 intervenciones) el 04/10/2019 13:44:38
Hola,

Tal vez podemos mejorar un poco proceso para que pueda funcionar con una matriz de cualquier tamaño.

1
2
3
4
5
6
7
8
9
A=[9,25,6,4;15,71,40,8;13,3,55,10;6,23,23,11];
A(eye(size(A))==1) = 1
 
A =
 
     1    25     6     4
    15     1    40     8
    13     3     1    10
     6    23    23     1

Es lo maravilloso de la programación, hacer las cosas solo una vez y tener que repetir la misma tarea continuamente.

Saludos,
Daniel Rodríguez.
Analytics Lane
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

cambio de diagonal principal matlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 04/10/2019 14:13:52
1
2
A=[9,25,6,4;15,71,40,8;13,3,55,10;6,23,23,11]
A(1:size(A,1)+1:size(A,1)^2)=ones(1,size(A,1))

1
2
3
4
5
6
7
8
9
10
11
12
13
14
A =
 
     9    25     6     4
    15    71    40     8
    13     3    55    10
     6    23    23    11
 
 
A =
 
     1    25     6     4
    15     1    40     8
    13     3     1    10
     6    23    23     1


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab
Servicio de Asesoría Online en Matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

cambio de diagonal principal matlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 04/10/2019 14:19:59
1
2
A=[9,25,6,4;15,71,40,8;13,3,55,10;6,23,23,11]
A(A==diag(A))=1

1
2
3
4
5
6
7
8
9
10
11
12
13
>> diagonal1
A =
     9    25     6     4
    15    71    40     8
    13     3    55    10
     6    23    23    11
 
 
A =
     1    25     6     4
    15     1    40     8
    13     3     1    10
     6    23    23     1


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab
Servicio de Asesoría Online en Matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
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
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

cambio de diagonal principal matlab

Publicado por Daniel (354 intervenciones) el 04/10/2019 14:41:38
Esta ultima tiene un fallo, con una matriz como esta no funciona:

1
2
3
4
5
6
7
8
9
10
A=[9,25,6,4;15,71,40,8;13,3,55,10;6,23,11,11];
A(A==diag(A))=1
 
 
A =
 
     1    25     6     4
    15     1    40     8
    13     3     1    10
     6    23     1     1
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