java版的先写出来了,用的跟c语言相同的算法,然后看看能不能以后加个框做成程序:

import java.math.*;
import java.util.*;
import java.text.*;
public class matrix {static int map1[][]=new int [110][110];static int just[][]=new int [110][110];public static void printf(int n,int map[][]){int i,j;for(i=1;i<=n;i++ ){for(j=1;j<n;j++)System.out.print(map[i][j]+" ");System.out.println(map[i][j]);}}public static void get(int numi,int numj,int map[][],int n){int i,j,k,l;for(i=0;i<n+10;i++)for(j=0;j<n+10;j++)just[i][j]=1;for(i=1;i<=n-1;i++)//求余子式矩阵 for(j=1;j<=n-1;j++){if(i>=numi&&j<numj)just[i][j]=map[i+1][j];else if(i>=numi&&j>=numj)just[i][j]=map[i+1][j+1];else if(i<numi&&j>=numj)just[i][j]=map[i][j+1];else if(i<numi&&j<numj)just[i][j]=map[i][j];}}//static int map[][]=new int [110][110];public static int getans(int nn){int map[][]=new int [110][110]; for(int i=1;i<=nn;i++)for(int j=1;j<=nn;j++)map[i][j]=just[i][j];if(nn==2)return map[1][1]*map[2][2]-map[1][2]*map[2][1];else if(nn==1)return map[1][1];else{int cnb=0;for(int i=1;i<=nn;i++){get(1,i,map,nn);//得到当前余子式 just // printf("pay attention!\n");//print(map,nn); //print(just,nn-1);if(i%2==1)cnb+=map[1][i]*getans(nn-1);elsecnb-=map[1][i]*getans(nn-1);}return cnb;}}public static int gcd(int m,int n){
//      if(m<n)
//      matrix.gcd(n,m);
//      if(n==0)
//      return m;
//
//      else
//      return matrix.gcd(n,m%n);int mm=m;int nn=n;if(mm<nn){int c=mm;mm=nn;nn=c;}int w=1;while(w!=0){w=mm%nn;mm=nn;nn=w;}return mm;}public static void ans(int n,int m){if(n*m<0){System.out.print("-");ans(Math.abs(n),Math.abs(m));return ;}if(m==1)System.out.print(n+"\t");else if(n%m==0)System.out.print(n/m+"\t");elseSystem.out.print((n/matrix.gcd(m, n))+"/"+(m/matrix.gcd(m, n))+"\t");}public static void main(String[] args) {// TODO 自动生成的方法存根Scanner cin=new Scanner(System.in);int i,j,k,l,m,p;while(true){int n=cin.nextInt();int ans=0;for(i=0;i<n+10;i++)for(j=0;j<n+10;j++)map1[i][j]=1;for(i=1;i<=n;i++)for(j=1;j<=n;j++){map1[i][j]=cin.nextInt();just[i][j]=map1[i][j];}int ans1=matrix.getans(n);System.out.println("矩阵的值为:");System.out.println(ans1);int map2[][]=new int [110][110];for(i=1;i<=n;i++)for(j=1;j<=n;j++){map2[i][j]=map1[j][i];just[i][j]=map2[i][j];}System.out.println("转置矩阵为:");matrix.printf(n, map2);int help2=matrix.getans(n);System.out.println(help2);if(help2==0){System.out.println("No inverse matrix");continue;}System.out.println("逆矩阵为:");for(i=1;i<=n;i++){for(j=1;j<=n;j++){matrix.get(i, j, map2, n);//boolean b=((i+j)%2==0);if((i+j)%2==0)matrix.ans(matrix.getans(n-1), help2);elsematrix.ans(matrix.getans(n-1)*-1, help2);}System.out.println();}System.out.println();}}}

java n*n矩阵求值及求逆矩阵相关推荐

  1. java求矩阵_java实现的n*n矩阵求值及求逆矩阵算法示例

    本文实例讲述了java实现的n*n矩阵求值及求逆矩阵算法.分享给大家供大家参考,具体如下: 先来看看运行结果: java版的写出来了,用的跟c语言相同的算法,然后看看能不能以后加个框做成程序: imp ...

  2. C语言 n*n矩阵求值及求逆矩阵

    求出矩阵的值以及输出逆矩阵,英语不好,略拗口. 上代码: #include<stdio.h> #include<string.h> #include<math.h> ...

  3. c语言逆值,C语言 n*n矩阵求值及求逆矩阵

    求出矩阵的值以及输出逆矩阵,英语不好,略拗口. 上代码: #include #include #include int map1[110][110],i,j,k,l,m,n,p,vis[110][11 ...

  4. java求矩阵的逆矩阵_java n*n矩阵求值及求逆矩阵

    展开全部 import java.math.*; import java.util.*; import java.text.*; public class matrix { static int ma ...

  5. 5.2 matlab多项式计算(多项式的四则运算、求导、求值、求根)

    1.多项式的表示 在MATLAB中创建多项式向量时,注意三点: (1)多项式系数向量的顺序是从高到低. (2)多项式系数向量包含0次项系数,所以其长度为多项式最高次数加1. (3)如果有的项没有,系数 ...

  6. matlab多项式的求值,多项式求值的MATLAB实现

    公茂果老师的课件中,给出了四种多项式求值的算法,下面给出代码示例: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %E-mail: [email protected] ...

  7. c语言程序设计报告表达式求值,表达式求值C语言实验报告

    表达式求值实验报告 李一鹏 PB12001076 数学系 1. 实验题目:表达式求值 2. 实验目的:熟悉栈与队列 3. 实验内容: 话说令狐冲只告诉东方不败:"东方姑娘你会永远活在我的心中 ...

  8. 用Python对数学函数进行求值、求偏导

    from sympy import *# x = Symbol("x") # y = diff(x**3+x, x) # print(y) # result = y.subs('x ...

  9. 12 More Effective C++—条款16/17 (2/8原理与延缓求值)

    1 "2/8"原理 二八原理指一件事情的20%需要投入80%的精力来做,即要分清主次点.这种情况在程序编写的时候尤为突出.关键性能点.重要逻辑代码一般都是集中在小部分区域,而这部分 ...

最新文章

  1. 语义分割--DeconvNet--Learning Deconvolution Network for Semantic Segmentation
  2. D3DPOOL(资源池)
  3. crontab命令linux,crontab命令
  4. 原创:微信小程序源码解说:石头剪刀布(附源码下载)
  5. 多客服功能终于也向所有微信认证的订阅号开放了
  6. CryEngine3 引擎非商业用途将免费
  7. C语言一看就能上手的干货!你确定你不来看吗?
  8. Android RecyclerView (十)组件化封装
  9. noip模拟赛 蒜头君打地鼠
  10. mysql 周 获取日期_MySQL获取日期周、月、天,生成序号
  11. 最好的git教程,没有之一
  12. java 微博 开源_微博开源框架Motan初体验
  13. tp框架中构造函数__construct()与初始化函数_initialize()的区别
  14. 关闭windows笔记本自带键盘
  15. wpf初学者-wpf控件简单介绍
  16. 女生玩游戏什么款式蓝牙耳机好用?小清新高颜值游戏蓝牙耳机推荐
  17. 洛阳理工学院linux实验报告,谁来给我抄实验报告啊!这一张又一张写得。。。。...
  18. re.search与re.findall的区别
  19. js 中文汉字按拼音排序,浏览器英文环境也可正确运行
  20. 一文了解BLDC与PMSM的区别

热门文章

  1. 计数排序(Counting sort)
  2. mysql为何不支持开窗函数?
  3. 从0移植uboot (二) _启动流程分析
  4. iOS开发基础:OC数组对象NSArray的常用方法
  5. nginx学习之详细安装篇(二)
  6. 原生的文件上傳和下载
  7. 【转载】使用缓存的9个误区(上)
  8. NiFi-面向流程的大数据处理框架
  9. 为VMware ESXi主机添加本地存储的过程及注意事项之2
  10. 【题解】洛谷P1283 平板涂色(搜索+暴力)