1 package com_set_name;
2 import Jama.Matrix;
3 public class matric {
4 static boolean hanmax(int a,int b,int N,double[][] A)
5 {
6 for(int i=0;i<N;i++)
7 {
8 if(A[a][b]<A[a][i]) return false;
9 }
10 return true;
11 }
12 static boolean liemin(int a,int b,int N,double[][] A)
13 {
14 for(int i=0;i<N;i++)
15 {
16 if(A[a][b]>A[i][b]) return false;
17 }
18 return true;
19 }
20 public static void point(double a[][])
21 {
22 int flag=0;
23 for(int i=0;i<4;i++)
24 {
25 for(int j=0;j<4;j++)
26 {
27 if(hanmax(i,j,4,a)&&liemin(i,j,4,a))
28 {
29 flag=1;
30 System.out.println((i+1)+","+(j+1)+";");
31 }
32 }
33 }
34 if(flag==0)
35 System.out.println("NO");
36 }
37 public static void toOneArray(double a[][])
38 {
39 int row=a.length;
40 int lin=a[0].length;
41 int total=row*lin;
42 int k=0;
43 int k1=0;
44 double newArray[]=new double[total];
45 double newArray1[]=new double[total];
46 for(int i=0;i<a.length;i++)
47 {
48 for(int j=0;j<a[0].length;j++)
49 {
50 newArray[k++]=a[i][j];
51 }
52 }
53 for(int i=0;i<newArray.length;i++)
54 System.out.print(" "+newArray[i]+" ");
55 for(int i=0;i<a[0].length;i++)
56 {
57 for(int j=0;j<a.length;j++)
58 {
59 newArray1[k1++]=a[j][i];
60 }
61 }
62 System.out.println();
63 for(int i=0;i<newArray.length;i++)
64 System.out.print(" "+newArray1[i]+" ");
65 }
66 public static void main(String[] args) {
67 // TODO Auto-generated method stub
68
69 double [][] array1={{-1,1,0,5},{-4,-3,0,9},{1,0,2,3},{2,8,0,6}};
70 double [][] array2={{1,1,0,6},{1,3,0,9},{1,0,2,6},{5,4,6,8}};
71 Matrix A =new Matrix(array1);
72 Matrix B=new Matrix(array2);
73 Matrix D=A.plus(B);
74 Matrix E=D.transpose();
75 System.out.println("矩阵相加");
76 D.print(5, 0);
77 System.out.println("矩阵转置");
78 E.print(5, 0);
79 //寻找鞍点并输出
80 point(array1);
81 toOneArray(array1);
82 }
83
84 }