Matlab - Valor maximo y minimo de una matriz

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

Valor maximo y minimo de una matriz

Publicado por Oscar (12 intervenciones) el 30/01/2017 05:07:54
Buenas noches. Tengo un problema con una matriz. Quiero sacar los maximos y minimos de las primeras 5 filas de la matriz y obtener valores de maximo y minimo para las siguientes 5 filas de la misma matriz, y así sucesivamente.

1
2
A=[5 2 4 8 9 ;     9 4 7 8 5;     7 5 8 9 6;     4 10 4 7 10;     9 8 7 6 5;
   8 5 2 4 5 ;     4 8 6 3 2;     7 5 8 9 6;     4 10 4 7 10;     5 2 4 8 9 ]

Se que puedo obtener los valores de maximos y minimos de la matriz de la siguiente manera, pero no logro hacer una matriz nueva que me indique max y min de las prestameras 5 filas y después de las otras 5.

1
2
3
4
5
6
7
8
9
10
11
12
13
n=5    %Número de filas
 
m=zeros(1,n)      %Crea matriz de ceros para minimos
M=zeros(1,n)      %Crea matriz de ceros para maximos
 
for i=1:n
    k=A(i,:)
    m(i)=min(k)
    M(i)=max(k)
end
 
m=min(minimo)
M=max(maximo)

Agradezco de antemano la ayuda
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: 8.232
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Valor maximo y minimo de una matriz

Publicado por JOSE JEREMIAS CABALLERO (5683 intervenciones) el 30/01/2017 05:24:41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
clear all
A=[5 2 4 8 9 ; 9 4 7 8 5; 7 5 8 9 6; 4 10 4 7 10; 9 8 7 6 5;
8 5 2 4 5 ; 4 8 6 3 2; 7 5 8 9 6; 4 10 4 7 10; 5 2 4 8 9 ]
n=5;
t=1;
for i=1:5:size(A,1)
    for j=i:i+n-1
      k=A(j,:);
      m(j)=min(k);
     M(j)=max(k);
    end
Minimo(t)=min(m);
Maximo(t)=max(M);
t=t+1;
end
display(Minimo)
display(Maximo)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
>> maximo_minimo
 
A =
 
     5     2     4     8     9
     9     4     7     8     5
     7     5     8     9     6
     4    10     4     7    10
     9     8     7     6     5
     8     5     2     4     5
     4     8     6     3     2
     7     5     8     9     6
     4    10     4     7    10
     5     2     4     8     9
 
 
Minimo =
 
     2     2
 
 
Maximo =
 
    10    10

Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Valor maximo y minimo de una matriz

Publicado por Oscar (12 intervenciones) el 30/01/2017 06:14:06
Muchísimas gracias Jose Jeremias.
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 Andrés
Val: 2
Ha aumentado su posición en 46 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Valor maximo y minimo de una matriz

Publicado por Andrés (1 intervención) el 24/09/2018 00:58:21
HOLA QUE TAL, YO ESTOY INTENTANDO DE HACER UN MENÚ CON ESTAS OPCIONES, PERO AL MOMENTO DE COMPILAR Y SELECCIONAR ALGUNAS DE LAS OPCIONES, NO ME MUESTRA NADA, ME PODRÍAN AYUDAR POR FAVOR


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
import java.util.Scanner;
public class Algoritmo {
Scanner leer= new Scanner (System.in);
 
 
    public static void main(String[] args) {
 
  Algoritmo  menu= new Algoritmo();
       menu.menuGeneral();
    }
 
   public int menuGeneral(){
   int opcion;
   do{
       System.out.println("");
       System.out.println("===================================================");
       System.out.println("================= MENU DE OPCIONES ================");
       System.out.println("1.SUMA DE MATRICES						");
       System.out.println("2.MULTIPLICACION DE MATRICES				");
       System.out.println("3.TRANSPUESTA MATRIZ A y B				");
       System.out.println("4.SUMA DIAGONAL PRINCIPAL MATRIZ A^B     ");
       System.out.println("5.MAXIMO Y MINIMO MATRIZ A ^ B           ");
       System.out.println("6.COLUMNA IMPAR ^ FILAS PARES MATRIZ A^B ");
       System.out.println("7.SALIR 									");
       System.out.println("===================================================");
       System.out.print("Ingrese una opcion: ");
       opcion=leer.nextInt();
 
       switch(opcion){
           case 1:System.out.println("SumadeMatriz"); break;
           case 2: System.out.println("MultiplicacionMatriz");break;
           case 3: System.out.println("TranspuestaMatriz");break;
           case 4: System.out.println("DiagonalPrincipalMatrices");break;
           case 5: System.out.println("MaximoMinimoMatriz");break;
           case 6: System.out.println("ColumnaImparFilaPar");break;
           case 7: System.out.println("................Saliendo del menu ..............");
               System.exit(0); break;
           default: System.out.println("Ingrese una opcion valida.......!!"); break;
 
       }
 
   }while(opcion != 8);
   return 0;
   }
 
public void MaximoMinimoMatriz(){
 
        int n, m, i, j;
        int A[][] = new int[10][10];
        int B[][] = new int[10][10];
 
        System.out.print("Ingrese dimension n: ");
        n = leer.nextInt();
        System.out.print("Ingrese dimension m: ");
        m = leer.nextInt();
 
        System.out.println("INGRESE VALORES MATRIZ A");
        for (i = 1; i <= n; i++) {
            for (j = 1; j <= m; j++) {
                System.out.print("A[" + (i) + "," + (j) + "]= ");
                A[i][j] = leer.nextInt();
            }
        }
 
        System.out.println("INGRESE VALORES MATRIZ B");
        for (i = 1; i <= n; i++) {
            for (j = 1; j <= m; j++) {
                System.out.print("B[" + (i) + "," + (j) + "]= ");
                B[i][j] = leer.nextInt();
            }
        }
 
        //IMPRIMIENDO MATRICES A Y B
        System.out.println("======== MATRIZ A =========");
        for (i = 1; i <= n; i++) {
            for (j = 1; j <= m; j++) {
                System.out.print("\t" + A[i][j]);
            }
            System.out.println();
        }
 
        System.out.println("====== MATRIZ B ========");
        for (i = 1; i <= n; i++) {
            for (j = 1; j <= m; j++) {
                System.out.print("\t" + B[i][j]);
            }
            System.out.println();
        }
 
       int menorA=A[1][1],mayorA=A[1][1],menorB=B[1][1],mayorB=B[1][1];
 
        System.out.println("*********************  MATRIZ A (MAXIMO Y MINIMO) ***************");
        for (i = 1; i <= n; i++) {
            for (j = 1; j <= m; j++) {
                //calculo del MENOR valor de la matriz
                if(i!=1 && j!=1){
                 if(A[i][j]>mayorA){
                    mayorA=A[i][j];
                }
                //calculo del MAYOR valor de la matriz
                if(A[i][j]<menorA){
                    menorA=A[i][j];
                }
                }
            }
        }
 
        System.out.println("NUMERO MENOR DE MATRIZ : "+menorA);
        System.out.println("NUMERO MAYOR DE MATRIZ : "+mayorA);
 
        System.out.println("*********************  MATRIZ B (MAXIMO Y MINIMO) ****************");
        for (i = 1; i <= n; i++) {
            for (j = 1; j <= m; j++) {
                //calculo del mayor valor de la matriz
                if(i!=1 && j!=1){
                 if(B[i][j]>mayorB){
                    mayorB=B[i][j];
                }
                //calculo del menor valor de la matriz
                if(B[i][j]<menorB){
                    menorB=B[i][j];
                }
                }
            }
        }
 
        System.out.println("NUMERO MENOR DE MATRIZ : "+menorB);
        System.out.println("NUMERO MENOR DE MATRIZ :"+mayorB);
 
}
 
}
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